我有一个基于VB的代码块,我需要在C#中重写,我正在编写一个函数,它创建一个COM对象的实例并创建一个新的终端会话,熄灭,读取屏幕并返回屏幕内容。现在虽然我觉得我没有在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项目的包管理器中的引用。我该怎么办?
做得与众不同?
答案 0 :(得分:1)
变化:
using BZLIPILib;
using BZWHLLLib;
...
object Host = Activator.CreateInstance(Type.GetType("BZLIPILib.LIPI"));
...为:
using BZLIPILib;
using BZWHLLLib;
...
LIPI Host = new LIPI();
...然后intellisense将按预期工作。
更新:似乎所需的实际代码是:
using BZLIPILib;
using BZWHLLLib;
...
LipiObj Host = new LipiObj();
......根据OP的评论如下。