将 vb6 属性 class 传递给 c# class 构造函数?
passed a vb6 properties class into a c# class constructor?
我在 VB6 中有一个 class,它包含许多文件属性。
我已将我们的 Emailer 转换为 C# 代码。
VB6 文件 class 将包含很多对电子邮件发送者有用的信息。
于是问题出现了:
有没有办法将我在 VB6 中的 class 推送到我的 C# Emailer 构造函数?
这可能吗?
在 VB6 代码中,我已将 DLL 链接到带有 COM 中断的项目,
然后在 VB6 代码中我可以做类似的事情..
Dim fileObj As New FileProperties
...fill out the object...
Dim emailObj As New Emailer(fileObj)
emailObj.SendEmail()
但是 C# 怎么知道在参数中接受什么数据类型?
您不能将带参数的构造函数公开给 COM。
理想情况下,您的 FileProperties class 应该在您的 C# 代码中,并通过 COM 与您的 Emailer class 一起公开。您的电子邮件 class 将公开一个 属性 类型的 FileProperties,它将在您的无参数构造函数中进行初始化。
在 VB6 中你会这样做
Dim emailObj As New Emailer
然后使用
填写FileProperties
emailObj.FileProperties.Prop1 = ""
我在 VB6 中有一个 class,它包含许多文件属性。 我已将我们的 Emailer 转换为 C# 代码。 VB6 文件 class 将包含很多对电子邮件发送者有用的信息。
于是问题出现了: 有没有办法将我在 VB6 中的 class 推送到我的 C# Emailer 构造函数? 这可能吗?
在 VB6 代码中,我已将 DLL 链接到带有 COM 中断的项目, 然后在 VB6 代码中我可以做类似的事情..
Dim fileObj As New FileProperties
...fill out the object...
Dim emailObj As New Emailer(fileObj)
emailObj.SendEmail()
但是 C# 怎么知道在参数中接受什么数据类型?
您不能将带参数的构造函数公开给 COM。
理想情况下,您的 FileProperties class 应该在您的 C# 代码中,并通过 COM 与您的 Emailer class 一起公开。您的电子邮件 class 将公开一个 属性 类型的 FileProperties,它将在您的无参数构造函数中进行初始化。
在 VB6 中你会这样做
Dim emailObj As New Emailer
然后使用
填写FilePropertiesemailObj.FileProperties.Prop1 = ""