我在98下能设成功,但移到NT下就不行了,我页长为620,NT下设后为1980,98下也不为620,而是570多,请教高手为什么?
procedure tform_contrl.printerinitial;
var  
   ADevice,  ADriver,  APort:  array[0..255]  of  Char;  
   DeviceHandle:  THandle;
   DevMode:  PDeviceMode;
begin  
       //初始化打印机
       Printer.PrinterIndex := Printer.PrinterIndex;
       Printer.GetPrinter(ADevice,  ADriver,  APort,  DeviceHandle);
       if  DeviceHandle  =  0  then
       begin
           Raise  Exception.Create('不能初始化打印机!');
           exit;
       end
       else
           DevMode  :=  GlobalLock(DeviceHandle);
       label1.Caption:=inttostr(printer.PageHeight);
       if  DeviceHandle    <>  0  then
       begin
           with  DevMode^  do
           begin
               dmPaperSize  :=DMPAPER_USER;  //;
               dmPaperlength:= 620;   //620
               dmpaperwidth:=920;     //920
               Printer.SetPrinter(ADevice,  ADriver,  APort,  DeviceHandle);
               GlobalUnLock(DeviceHandle);           end;
       end;
       
       label4.Caption:=inttostr(printer.PageHeight);
end;