佚名通过本文主要向大家介绍了ocx编写,无法创建数据跟踪ocx,mscomctl.ocx,comdlg32.ocx,ocx控件安装等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 如何编写一个OCX打开串口随便发个数据 谢谢
描述:
调用后 网页能有消息框 Test正常 但是打开串口那个就不行 有没做过的来指出下错在哪
解决方案1:
描述:
short CHELLO_OCXCtrl::Card(LPCTSTR Port, LPCTSTR PszErrorCode)
{
ComHandle=::CreateFile(Port,
GENERIC_READ||GENERIC_WRITE,
0,NULL,OPEN_EXISTING,NULL,NULL);
if(ComHandle==INVALID_HANDLE_VALUE){return 0;}
char tmpP[11]="9600,n,8,1";//设置通讯参数
DCB dcb;
if(::GetCommState(ComHandle,&dcb)==0){return -1;}
if(::BuildCommDCB(tmpP,&dcb)==0){return -1;}
if(::SetCommState(ComHandle,&dcb)==0){return -1;}
COMMTIMEOUTS TimeOuts;//设置超时时间
if(::GetCommTimeouts(ComHandle,&TimeOuts)){return -2;}
TimeOuts.ReadIntervalTimeout=2000;
TimeOuts.ReadTotalTimeoutC /> TimeOuts.ReadTotalTimeoutMultiplier=400;
TimeOuts.WriteTotalTimeoutMultiplier=40;
TimeOuts.WriteTotalTimeoutC /> if(::SetCommTimeouts(ComHandle,&TimeOuts)){return -2;}
::SetupComm(ComHandle,2048,1024);//设置缓冲区
::PurgeComm(ComHandle,PURGE_RXABORT||PURGE_RXCLEAR);
::PurgeComm(ComHandle,PURGE_TXABORT||PURGE_TXCLEAR);
Write();发送数据内容通过WritleFile
return 0;
}
<script type="text/javascript">
function Card()
{
var a="COM1";
var temp[5]="";
HELLO_OCX.Card(a,temp);
}
</script>
<script type="text/javascript">
function Test()
{
HELLO_OCX.Test();
}
</script>
</head>
<body>
<object id= "HELLO_OCX" classid= "clsid:C674FF16-4629-4F2D-BAD7-13428D42C2D8" codebase= "E:\test\HELLO_OCX\Release\HELLO_OCX.ocx"></object>
<br /><br />
<input id="Button1" type="button" value="链接业务服务器" />
调用后 网页能有消息框 Test正常 但是打开串口那个就不行 有没做过的来指出下错在哪
解决方案1:
http://hi.baidu.com/janxhuilk/blog/item/fd5d0f23a9c310599922ed5e.html/cmtid/4dabd12281f33cfcd5cae263