xp系统下delphi如何向打印端口LPT1按二进制循环输出0x36,0x39,0x3c; 最好能给个代码
解决方案 »
- 请教:两位小数,用什么变量?很奇怪的一个问题,在Dbgrid中,编辑一个数字,比如1.20,无论如何也无法只取两位小数
- 1stClass4000中的TfcOutlooklist的使用
- 请问如何将一个表示6万5千色的一个16位数转换成相应的RBG值。
- 今天生日,散分
- 求助:怎样把一个好的光电鼠标打造成“broken”鼠标
- 高分請教高手:一個關於Delphi在串行通信應用方面的問題
- 如何列举一个窗体下的所有控件
- XMLTransformProvider控件中用到的xtr文件是怎么生成的????
- 请问如何做软件的皮(skin)?
- 网站: 国外类似 csdn 的网站的网址,叫做什么 ‘..Exports.net’我记不清
- delphi xe7 內建 fastreport 导出PDF加密的问题
- 本人不是计算机专业,求助解决一个电脑问题
lptData: array[0..2] of Char = (#$36, #$39, #$3C);procedure lptProcess();
var
hFile: Cardinal;
byteWrited: Cardinal;
Overlapped: TOverlapped;
begin
hFile := CreateFile('LPT1:', GENERIC_WRITE, FILE_SHARE_WRITE, nil, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, 0);
if hFile = INVALID_HANDLE_VALUE then
Exit; Overlapped.hEvent := CreateEvent(nil, False, False, nil); while True do
begin
if not WriteFile(hFile, lptData, length(lptData), byteWrited, @Overlapped) then
case WaitForSingleObject(Overlapped.hEvent, 4000) of
WAIT_OBJECT_0: ;
WAIT_TIMEOUT, WAIT_ABANDONED:
begin
Break;
end;
end;
end;
CloseHandle(hFile);
CloseHandle(Overlapped.hEvent);end;
我要做到的东西就是在并口上输出8个独立的方波的波形(用程序来应该就是给并口设置不同的数值),但是具体什么时候改变波形我用sleep(x)来控制,输出一个波形后我再计算x的值,然后再输出下一个。间隔时间可能几百个毫秒,也可能几毫秒。