Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Работа с портами [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 такой штуки не нашел :(


Наверх

Титульная страница Поиск, карта сайта Написать письмо