在 C# 中正确设置 COM 对象的实例
Properly Setting an instance of a COM Object in C#
我有一个基于 VB 的代码块,我需要用 C# 重写,我正在编写一个函数,它创建一个 COM 对象的实例并创建一个新的终端会话,退出,读取一个屏幕和 returns 屏幕的内容。现在,虽然我觉得我没有在 C# 中采用正确的方法,但希望得到一些反馈。
VB代码
set bzlipi = CreateObject("BlueZone.LIPI")
bzlipi.Username = "myuserid"
bzlipi.Password = "mypassword"
bzlipi.HostAddress = "101.122.0.138"
bzlipi.ShowTransferStatusWindow = False
bzlipi.LocalPromptBeforeOverwrite = False
result = bzlipi.ReceiveFile( "local.txt", "MYLIB/F4101" )
MsgBox bzlipi.ErrorMessage
C#
using BZLIPILib;
using BZWHLLLib;
public void Connector() {
object Host = Activator.CreateInstance(Type.GetType("BZLIPILib.LIPI"));
//Set Host properties
}
就目前而言,这并不是不将 Host 中的任何属性识别为其
VB 同行如上。我已经制作了所有可用的 COM 对象
我的 VS 项目的包管理器中的引用。我应该怎样
做不同的事?
变化:
using BZLIPILib;
using BZWHLLLib;
...
object Host = Activator.CreateInstance(Type.GetType("BZLIPILib.LIPI"));
...至:
using BZLIPILib;
using BZWHLLLib;
...
LIPI Host = new LIPI();
...然后智能感知将按预期工作。
更新: 看来实际需要的代码是:
using BZLIPILib;
using BZWHLLLib;
...
LipiObj Host = new LipiObj();
...根据下面 OP 的评论。
我有一个基于 VB 的代码块,我需要用 C# 重写,我正在编写一个函数,它创建一个 COM 对象的实例并创建一个新的终端会话,退出,读取一个屏幕和 returns 屏幕的内容。现在,虽然我觉得我没有在 C# 中采用正确的方法,但希望得到一些反馈。
VB代码
set bzlipi = CreateObject("BlueZone.LIPI")
bzlipi.Username = "myuserid"
bzlipi.Password = "mypassword"
bzlipi.HostAddress = "101.122.0.138"
bzlipi.ShowTransferStatusWindow = False
bzlipi.LocalPromptBeforeOverwrite = False
result = bzlipi.ReceiveFile( "local.txt", "MYLIB/F4101" )
MsgBox bzlipi.ErrorMessage
C#
using BZLIPILib;
using BZWHLLLib;
public void Connector() {
object Host = Activator.CreateInstance(Type.GetType("BZLIPILib.LIPI"));
//Set Host properties
}
就目前而言,这并不是不将 Host 中的任何属性识别为其
VB 同行如上。我已经制作了所有可用的 COM 对象
我的 VS 项目的包管理器中的引用。我应该怎样
做不同的事?
变化:
using BZLIPILib;
using BZWHLLLib;
...
object Host = Activator.CreateInstance(Type.GetType("BZLIPILib.LIPI"));
...至:
using BZLIPILib;
using BZWHLLLib;
...
LIPI Host = new LIPI();
...然后智能感知将按预期工作。
更新: 看来实际需要的代码是:
using BZLIPILib;
using BZWHLLLib;
...
LipiObj Host = new LipiObj();
...根据下面 OP 的评论。