![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Работа с портами [D7, WinXP]
Darkwin © (2006-03-29 13:37:00)Как напрямую писать в порты типа "Microsoft Document Imaging Writer Port:" или "TS001" (в терминальном режиме)? Написал прогу, которая работает с принтером через COM/LPT, теперь ситуация изменилась, нужен TS001. Пробую CreateFile - не выходит каменный цветок :(
procedure TForm1.Button1Click(Sender: TObject);
var
pInfo, pScan: PPortInfo2;
bytesNeeded, items, i: DWORD;
Pr:TextFile;
PrInf:PRINTER_INFO_2;
h:HWND;
begin
EnumPorts( nil, 2, nil, 0, bytesNeeded, items );
GetMem( pInfo, bytesNeeded );
Win32Check(EnumPorts( nil, 2, pInfo, bytesNeeded, bytesNeeded, items ));
For i:= 0 To items-1 Do
Begin
pScan := pInfo;
memo1.lines.add( pScan^.pPortName+'/------/'+pScan.pDescription+'/------/'+pScan.pMonitorName+'/------/'+IntToStr(pScan.fPortType));
Inc(pInfo);
end;
h:=CreateFile('Microsoft Document Imaging Writer Port:',GENERIC_WRITE or GENERIC_READ,0,nil,OPEN_EXISTING,FILE_FLAG_OVERLAPPED,0);
if h = INVALID_HANDLE_VALUE then
ShowMessage('wtf!!!');
CloseHandle(h);
end;
Darkwin (2006-03-29 13:57:00) [1]кста, в MSDN нашел OpenPort http://msdn.microsoft.com/library/default.asp?url=/library/en-us/Print_r/hh/Print_r/spoolfnc_54bf35f0-e3c7-4c7f-8837-4c8393337e2b.xml.aspвроде то что мне надо, но ни в Delphi7, ни в Borland Developer Studio 2006 такой штуки не нашел :(