http://www.delphi2007.net/DelphiMultimedia/html/delphi_2006120918263972.html
编写了一个串口采集数据,然后画实时曲线的程序,用到MSComm和TeeChart控件。
编译程序直接生成的exe文件,copy到任何2000系统下都能运行,但是拿到XP系统下就不行了,一运行就报错,‘未知的异常’。真不知道为什么。
然后我就用InstallShield 制作安装文件
1 新建工程
2 创建basic windowinstaller
3 按assist提示一步步往下操做,到添加文件的时候,我选择我程序编译生成的exe文件,就总是出错....
刚用delphi,弄了一下午,好沮丧,请大家指点一下,谢谢
错误提示是
Exception EolSysError in ComTest.exe at 000B0AA5 没有注册类别
ComTest.exe是我的程序编译生成的文件。
你在XP环境下编译新的exe程序试试
这个错误我遇到过,关键是XP为了安全,不允许用户直接操作硬件,只能通过虚拟设备来实现!
所以你也许不能直接用MSComm,网上有解决这个问题的专门控件,你找找,找不到发信给我,我找到了发给你!
可以改用spcomm等串口控件
使用TurboPower Async Professional 4.06里面的串口控件来做,绝对不会有这个问题,我一直使用win2k,编译出来的程序在XP的系统上运行什么问题都没有
MSCOMM,本来就不好用的
SPCOMM之类的API才能更好发现问题
可能是MSComm没注册。
使用前安装一下“串口调试XP”试试,一是它可以帮助注册MSComm控件,二是可以对Com口进行调试。
自己搜索一下,很多地方可以下载的
Root:HKCR;subkey:"Licenses\4250E830-6AC2-11cf-8ADB-00AA00C00905";ValueType:string;ValueName:"";ValueData:"kjljvjjjoquqmjjjvpqqkqmqykypoqjquoun"
Root:HKCR;
subkey:"Licenses\4250E830-6AC2-11cf-8ADB-00AA00C00905";
ValueType:string;ValueName:"";
ValueData:"kjljvjjjoquqmjjjvpqqkqmqykypoqjquoun"
如果是mscommi没有有注册,你可以试一下上面的东西
用SPCOMM 和Tchart , 俺用过,不会错