Autor |
Beitrag |
C++arsten
      
Beiträge: 79
|
Verfasst: Fr 26.10.07 21:26
So bestimme ich die Druckerränder:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| procedure DruckerraenderFestlegen; var PixelsPerInch, PhysPageSize, OffsetStart, PageRes: TPoint; begin Printer.PrinterIndex := Printer.Printers.IndexOf(druckername); PixelsPerInch.y := GetDeviceCaps(Printer.Handle, LOGPIXELSY); PixelsPerInch.x := GetDeviceCaps(Printer.Handle, LOGPIXELSX); Escape(Printer.Handle, GETPHYSPAGESIZE, 0, nil, @PhysPageSize); Escape(Printer.Handle, GETPRINTINGOFFSET, 0, nil, @OffsetStart); PageRes.y := GetDeviceCaps(Printer.Handle, VERTRES); PageRes.x := GetDeviceCaps(Printer.Handle, HORZRES); drucker_oberer_rand := OffsetStart.y / PixelsPerInch.y * 2.54; drucker_linker_rand := OffsetStart.x / PixelsPerInch.x * 2.54; end; |
Erhalte aber in den Escape-Zeilen immer die Warnung: Unsicherer Code '@-operator'. Kann man das umschreiben?
Danke und Gruß
Carsten
|
|
Bernhard Geyer
      
Beiträge: 721
Erhaltene Danke: 3
|
Verfasst: Fr 26.10.07 21:34
C++arsten hat folgendes geschrieben: | Erhalte aber in den Escape-Zeilen immer die Warnung: Unsicherer Code '@-operator'. Kann man das umschreiben? |
Solange du den Code nicht 1:1 in .NET verwenden willst kannst du die Meldung ignorieren. Für Win32 ist die Meldung ohne Bedeutung da es nicht anders geht.
|
|
JayEff
      
Beiträge: 2971
Windows Vista Ultimate
D7 Enterprise
|
Verfasst: Fr 26.10.07 21:39
Falls du, um mehr übersichtlichkeit zu bekommen, in dieser Prozedur keine Warnungen mehr sehen willst, kannst du dies über den Compilerschalter "WARNINGS" einstellen:
Delphi-Quelltext 1: 2: 3: 4:
| {$WARNINGS OFF} Escape ... Escape ... {$WARNINGS ON} |
_________________ >+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
|
|
C++arsten 
      
Beiträge: 79
|
Verfasst: Fr 26.10.07 21:44
Danke schön für eure Antworten!
|
|
Bernhard Geyer
      
Beiträge: 721
Erhaltene Danke: 3
|
Verfasst: Fr 26.10.07 21:55
JayEff hat folgendes geschrieben: | Falls du, um mehr übersichtlichkeit zu bekommen, in dieser Prozedur keine Warnungen mehr sehen willst, kannst du dies über den Compilerschalter "WARNINGS" einstellen: |
Ab D7 kann man das Projektweit über die Projektoptionen gezielt für diese Meldung abschalten.
|
|
JayEff
      
Beiträge: 2971
Windows Vista Ultimate
D7 Enterprise
|
Verfasst: Fr 26.10.07 22:06
Bernhard Geyer hat folgendes geschrieben: | Ab D7 kann man das Projektweit über die Projektoptionen gezielt für diese Meldung abschalten. |
Warnungen haben meist Gründe, wesshalb ich dazu tendiere, explizit nur einzelne, unumgängliche Warnungen auszuklammern... Ich denke, eine Warnung einmal zur Kenntnis genommen zu haben ist erstmal kein Fehler 
_________________ >+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
|
|
Bernhard Geyer
      
Beiträge: 721
Erhaltene Danke: 3
|
Verfasst: Sa 27.10.07 11:44
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Sa 27.10.07 11:51
Es reicht meist zu, folgende 3 Zeilen in seinem Source einzubinden.
Delphi-Quelltext 1: 2: 3:
| {$WARN UNSAFE_CODE OFF} {$WARN UNSAFE_TYPE OFF} {$WARN UNSAFE_CAST OFF} |
Alternativ: Folgende Dateien herunterladen
omorphia.svn.sf.net/.../Omorphia.config.inc
omorphia.svn.sf.net/...Omorphia.version.inc
omorphia.svn.sf.net/.../Omorphia.verify.inc
und mit
Delphi-Quelltext 1: 2:
| {$I 'Omorphia.config.inc'} |
einbinden. Da werden neben den Type-Warnungen noch ein paar andere Dinge eingestellt und zusätzliche Infos (z.B. Compiler, Platform und Bibliothek) aufbereitet.
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|