我用HANDLE m_hCardInterFace = CreateFile(\"\\\\\\\\.\\\\LPT1 \",GENERIC_WRITE,NULL,NULL,OPEN_EXISTING,NULL,NULL);打开并口成功后,对并口进行了写操作,结...
全文
回复(12) 2003-07-10 09:04 来自版块 - ABC初学者
表情
tangwise WriteFile (hLpt1, pBuffer, iFileLength * sizeof (TCHAR),&dwBytesWritten, NULL) ; (2004-01-05 21:03)
gjltce先看看WriteFile函数的返回代码再分析。这样才能有的放矢。(2003-07-17 12:24)
peng422看我的,别笑:( void __fastcall TForm1::TrackBar1Change(TObject *Sender) { dmxdata=TrackBar1->Position; Label1->Caption=IntToStr(dmxdata)...(2003-07-16 19:03)
peng422老大,用unsigned int太浪费了,用unsigned char哦(2003-07-16 18:57)
funny to juventus : first 首先确定是否已打开了并口: second 应把得知换成unsigned int command = 0xff 强制装换成dword; 我用过这样的程序,应该能解决!!!(2003-07-16 13:47)
libin2309你试着在应用程序里用malloc函数分配一个缓冲区。(2003-07-10 20:44)
juventus我试过了,没用 我想那个参数可能是用在缓冲区包含了多于要写的内容的时候 (2003-07-10 13:35)
libin2309 我是用DS写的ISA的驱动,我是用的DEVICEIOCTL,我想WRITEFILE和这个差不多。 在你的WRITEFILE这个函数里的参数:&command, 1,我感觉用的不太对,这个1表示什么?应该上是缓冲区的大小,就是:&command的大小,你换成s...(2003-07-10 13:24)
juventus那个函数我几经看了好几遍msdn了,实在是看不出有什么地方有问题 另外,你所说的哪个口的问题我不是很明白啊,函数参数中也没有对应的参数啊,打开并口后,所有的东西就是一个句柄,我想再user mode下也不太可能让你直接用端口地址吧。 谢谢你参与讨论这个问题,要不你看看Writ...(2003-07-10 11:23)
libin2309没有硬件,这个函数使用正确的话,也能成功返回啊,好好看看这个函数的使用说明,并口的寄存器都是8位的,用BYTE就可以了。你往哪个口写数据,这个函数里的地址偏移量就用哪个 口对应的地址与基地址的差值就可以了。这个很简单应当没什么问题的。(2003-07-10 11:01)

返回顶部