Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.07.02;
Скачать: CL | DM;

Вниз

Работа с портами   Найти похожие ветки 

 
Darkwin   (2006-03-29 13:37) [0]

Как напрямую писать в порты типа "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) [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 такой штуки не нашел :(



Страницы: 1 вся ветка

Текущий архив: 2006.07.02;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.028 c
2-1149832534
Dimich1978
2006-06-09 09:55
2006.07.02
Проблема checklstbox1.Items.Objects


2-1150178919
Хой
2006-06-13 10:08
2006.07.02
Оператор inherited


2-1148205577
mefodiy
2006-05-21 13:59
2006.07.02
Вывод знаков псевдографики в RichEdit


2-1150450242
Gydvin
2006-06-16 13:30
2006.07.02
Savedialog, сообщение о существующем файле


2-1149847414
Balkon
2006-06-09 14:03
2006.07.02
Причина ошибки Access Violation