mg4377娱乐娱城官网_mg4377娱乐手机版_www.mg4377.com

Delphi获取暗中同意打字与印刷机名称及端口,D

时间:2019-08-23 19:09来源:mg4377娱乐手机版
Delphi获取暗中认可打字与印刷机名称及端口  Delphi获取暗中同意打字与印刷机名称及端口,delphi打印机 Delphi获取暗许打字与印刷机名称及端口  在前段时间写的收银河系统中出于当下市

Delphi获取暗中认可打字与印刷机名称及端口 

Delphi获取暗中同意打字与印刷机名称及端口,delphi打印机

Delphi获取暗许打字与印刷机名称及端口 

在前段时间写的收银河系统中出于当下市镇上无数计算机主板上一度未有并口,而POS机却又须要并口,所以如今供给用PCI转接卡,这些就导致不一致门店使用的端口就有望两样,那就给我们前后相继中弹出钱箱的授命带来一定的难度。所以就因此猎取Window自带的暗许,得出打字与印刷机消息。
在Windows文件下有个win.ini,里面自带暗中同意打印机的新闻。通过调用API函数Getprofilestring那个函数获取打印机音讯。
 
在分界面上拖个button,在其单击事件中写:
procedure TForm1.Btn1Click(Sender: TObject);
var
    AppName : Array [0..256] of Char;    //节名称字符串
    KeyName : Array [0..256] of Char; //键名称字符串
Delphi获取暗中同意打字与印刷机名称及端口,Delphi中取得打印机设备名和端口名。    DefaultString : Array [0..256] of Char; //在键名没找到时暗中认可再次来到的字串
    ReturnedString : Array [0..256] of Char; //在键名找到时重返的字串
begin
    AppName := 'Windows';//节名称
    KeyName := 'device';    //键名称
    GetProfileString(AppName,KeyName,DefaultString,ReturnedString,Sizeof(ReturnedString));
    ShowMessage(ReturnedString);
end;

Delphi获取默许打印机名称及端口 在这段时间写的收银河系统中由于近年来市道上众多Computer主板上...


实际代码

在这几天写的收银河系统中由于近期市情上无数Computer主板上曾经远非并口,而POS机却又供给并口,所以如今急需用PCI转接卡,那个就导致不一致门店使用的端口就有十分大希望两样,那就给我们前后相继中弹出钱箱的吩咐带来一定的难度。所以就由此获得Window自带的默许,得出打印机音讯。
在Windows文件下有个win.ini,里面自带私下认可打字与印刷机的音信。通过调用API函数Getprofilestring那一个函数获取打字与印刷机音讯。
 
在分界面上拖个button,在其单击事件中写:
procedure TForm1.Btn1Click(Sender: TObject);
var
    AppName : Array [0..256] of Char;    //节名称字符串
    KeyName : Array [0..256] of Char; //键名称字符串
    DefaultString : Array [0..256] of Char; //在键名没找到时暗中同意重回的字串
    ReturnedString : Array [0..256] of Char; //在键名找到时重回的字串
begin
    AppName := 'Windows';//节名称
    KeyName := 'device';    //键名称
    GetProfileString(AppName,KeyName,DefaultString,ReturnedString,Sizeof(ReturnedString));
    ShowMessage(ReturnedString);
end;

 

  1. procedure SetDefaultPrinter(NewDefPrinter: string); 
  2. var
  3.   ResStr: array[0..255] of Char;
  4. begin
  5.   StrPCopy(ResStr, NewdefPrinter);
  6.   WriteProfileString('windows', 'device', ResStr);
  7.   StrCopy(ResStr, 'windows');
  8.   SendMessage(HWND_BROADCAST, WM_WININICHANGE, 0, Longint(@ResStr));
  9. end;

在近期写的收银河系统中出于当下市道上相当多计算机主板寒蒙植药志未有并口,而POS机却又供给并口,所以近期...

uses Printers;

复制代码

{$IFNDEF WIN32}
const MAX_PATH = 144;
{$ENDIF}

参数:NewDefPrinter是切实的打字与印刷机名称,能够到调节面板-设备和打字与印刷机下查看,举个例子:Microsoft XPS Document Writer
动用代码

procedure TForm1.Button1Click(Sender: TObject);
var
 pDevice : pChar;
 pDriver : pChar;
 pPort   : pChar;
 hDMode : THandle;
begin
 if PrintDialog1.Execute then begin
   GetMem(pDevice, cchDeviceName);
   GetMem(pDriver, MAX_PATH);
   GetMem(pPort, MAX_PATH);
   Printer.GetPrinter(pDevice, pDriver, pPort, hDMode);
   if lStrLen(pDriver) = 0 then begin
     GetProfileString(Devices, pDevice, , pDriver, MAX_PATH);
     pDriver[pos(,, pDriver) - 1] := #0;
   end;
   if lStrLen(pPort) = 0 then begin
     GetProfileString(Devices, pDevice, , pPort, MAX_PATH);
     lStrCpy(pPort,  @pPort[lStrLen(pPort) 2]);
   end;
   Memo1.Lines.Add(Device := StrPas(pDevice));
   Memo1.Lines.Add(Driver := StrPas(pDriver));
   Memo1.Lines.Add(Port := StrPas(pPort));
   FreeMem(pDevice, cchDeviceName);
   FreeMem(pDriver, MAX_PATH);
   FreeMem(pPort, MAX_PATH);
 end;
end;

  1. SetDefaultPrinter('Microsoft XPS Document Writer');

 

简短案例

编辑:mg4377娱乐手机版 本文来源:Delphi获取暗中同意打字与印刷机名称及端口,D

关键词: Delphi delphi7