用SPCOMM编的电话拨号程序在一台机器上可以,在另一台机子不行,不知为何?请指教(急!急!急) ( 积分: 100 )

  • 主题发起人 主题发起人 taowei
  • 开始时间 开始时间
T

taowei

Unregistered / Unconfirmed
GUEST, unregistred user!
用SPCOMM编的电话拨号程序在一台机器上可以,在另一台机子不行,不知为何?请指教(急)

我用SPCOMM编了一个拨号程序,安装在多台计算机上测试均可以,而安装在有一台机子却不可以,该机子是XP,内置猫,原先怀凝机子不行,但它用WINDOWS的超级终又可以拨号,百思不得其解,请高手赐教。
 
用SPCOMM编的电话拨号程序在一台机器上可以,在另一台机子不行,不知为何?请指教(急)

我用SPCOMM编了一个拨号程序,安装在多台计算机上测试均可以,而安装在有一台机子却不可以,该机子是XP,内置猫,原先怀凝机子不行,但它用WINDOWS的超级终又可以拨号,百思不得其解,请高手赐教。
 
具体现象是什么?打不开串口还是发不出数?
 
是不是端口等参数设置不对?
 
to maxim88,
打不开串口
 
端口等参数设置应该是对的,因为和超级终端用的是相同的串口
 
你先看看SPCOMM.PAS的下面这个地方改过来了吗?
没改的话先试试
SPCOMM改完要重新装一下
procedure TComm.StartComm;
var
hNewCommFile: THandle;
begin
// Are we already doing comm?
if (hCommFile <> 0) then
raise ECommsError.Create( 'This serial port already opened' );

// hNewCommFile := CreateFile( PChar(FCommName),
// GENERIC_READ or GENERIC_WRITE,
// 0,} {not shared}
// nil, {no security ??}
// OPEN_EXISTING,
// FILE_ATTRIBUTE_NORMAL or FILE_FLAG_OVERLAPPED,
// 0 {template} );

//------------spcomm的改正----------------
hNewCommFile := CreateFile( PChar('//./' +FCommName),
GENERIC_READ or GENERIC_WRITE,
0, {not shared}
nil, {no security ??}
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL or FILE_FLAG_OVERLAPPED,
0 {template});
 
多人接受答案了。
 
后退
顶部