首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将示波器的VB代码编写为C#代码

将示波器的VB代码编写为C#代码
EN

Stack Overflow用户
提问于 2015-10-22 21:11:34
回答 1查看 562关注 0票数 0

我通常在VB中使用我的示波器(示波器有它自己的操作系统)。现在我正在尝试制作一个C#可执行文件,它与我的VB代码做同样的事情,并在示波器上运行它。

我正在尝试将以下VB代码写入C#:

代码语言:javascript
复制
Set app = CreateObject("LeCroy.XStreamDSO")
wave = app.Acquisition.C1.Out.Result.DataArray 
msgbox(wave(1))

它所做的基本上是连接到我的示波器软件,并输出波形阵列的第一个元素。

这是我到目前为止在C#中尝试的方法:我用VS2015制作了一个表单,并将目标.NET设置为4.0,因为我的示波器运行的是WindowsXP,而它只安装了.NET 4.0。

代码语言:javascript
复制
System.Type objType = System.Type.GetTypeFromProgID("LeCroy.XStreamDSO");
dynamic comObject = System.Activator.CreateInstance(objType);
var wave = comObject.Acquisition.C1.Out.Result.DataArray;
MessageBox.Show(wave(1));

基本上,我将此代码放在表单的按钮中。当我在示波器上将其作为可执行文件运行时,我得到错误:“您的应用程序中发生了未处理的异常。”“无法调用非委托类型”。

有人能帮我纠正我做错了什么吗?会非常感激的。

EN

回答 1

Stack Overflow用户

发布于 2015-10-22 21:27:49

因为它是.net4,所以你可以使用dynamic

代码语言:javascript
复制
Type myOscApp= Type.GetTypeFromProgID("LeCroy.XStreamDSO");
dynamic AppInstance= Activator.CreateInstance(myOscApp);
AppInstance.Visible = true;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33281882

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档