我在主窗体里添加了一个Mscomm控件,并进行初始化设置。在其他的窗体由于要向axMSComm1.Output发下位机的控制命令,所以把Mscomm设为public然后在需要的时候调用。但是现在出现HRESULT:0x800A1F52异常。不知道怎么解决。请问可以在其他窗体调用axMSComm1.Output吗?
解决方案 »
- 有人用 C1FlexGrid 控件么?
- 求救 C#连接SQL Server 2005数据库
- 网页头显示问题
- c# web页面如何做级连菜单
- 大家好~~我才学C#! C#中好多问题都不懂~~尤其是那些自动生成的代码,大伙帮忙解释哈~谢啦~~
- 怎么很少见到WinForm方面的教程?
- 如何利用office开发接口在.NET中实现excel文件的打印?
- 100分求助:如何将Panel中的PictureBox控件重新排列?
- 请问三层架构中,中间层所实现的功能是什么?
- 如何获取页面来源是否为邮件?????
- AsMSFlexGrid中使用右键控件ContextMenuStrip
- 如何获得c#dataGridView 选中行的主键?
在MSCOMM所在的窗体中使用该控件没有问题,但是,
在别的窗体中打开含有该MSCOMM控件的窗体,
然后使用该空间就出现问题。。
建议用SerialPort
如果你用拖控件的方式在Form1中添加SerialPort,一定记得把Form1.Designer里的添加SerialPort的那一行代码中的private改为public。
如果你想在Form2中使用该控件,还得在Form2代码里new一个Form1出来,但这样还是造成两个控件访问同一个串口,你可以尝试把添加的SerialPort控件搞成Static的,这样在Form2里就不用new Form1()了。奉劝楼主尽量不要两个窗体公用一个控件,而是尽量使用数据传递的方式。你把该要的数据传过去就可一个,两个窗口各自处理。这是公用计算机,我没法调代码,就不贴代码了
但是涉及到axmscomm的操作就会报错。yf198557
奉劝楼主尽量不要两个窗体公用一个控件,而是尽量使用数据传递的方式。你把该要的数据传过去就可一个,两个窗口各自处理。
但是我确实是需要在不同窗体来输入不同命令。所以必须共有一个控件。现在有很多问题啊。