Français
Source/ Codesnippets

Querformat Standartdrucker Umstellen

 

KompilierenMarqueSéparation
In den Programmheader die DEF Zeilen schreiben
DEF @GetProfileString(5) !kernel32,GetProfileStringA
DEF @OpenPrinter(3) !winspool.drv,OpenPrinterA
DEF @DocumentProperties(6) !winspool.drv,DocumentPropertiesA
DEF @GetPrinter(5) !winspool.drv,GetPrinterA

Proc Drucker_Orientation_Umstellen

    Parameters Orientation% 1=Hochformat, 2=Querformat
    Declare SectionName$,KeyName$,DefautString$,ReturnBuffer#,Printername$,PHANDLE#
    Declare Pdevice$,Count&,Zähler%,DevMode#,DevMode2#,Länge&
    DIM ReturnBuffer#,256
    DIM PHANDLE#,4
    Let SectionName$=Windows
    Let KeyName$=device
    DefautString$=
    @GetProfileString(@ADDR(SectionName$),@ADDR(KeyName$),@ADDR(DefautString$),ReturnBuffer#,256)
    LET Printername$=@SubStr$(@STRING$(ReturnBuffer#,0),1,,)
    @OpenPrinter(@ADDR(Printername$),PHANDLE#,0)
    LET Länge&=@DocumentProperties(%HWND,@Long(PHANDLE#,0),@ADDR(Pdevice$),0,0,0)
    DIM DevMode#,Länge&
    DIM DevMode2#,Länge&
    @DocumentProperties(%HWND,@Long(PHANDLE#,0),@ADDR(Pdevice$),DevMode#,0,2)
    @DocumentProperties(%HWND,@Long(PHANDLE#,0),@ADDR(Pdevice$),DevMode2#,0,2)
    Long DevMode#,40=1
    Word DevMode#,44=Orientation%
    @DocumentProperties(%HWND,@Long(PHANDLE#,0),@ADDR(Pdevice$),DevMode2#,DevMode#,9)
    DELETEOBJECT @Long(PHANDLE#,0)
    Dispose ReturnBuffer#
    Dispose DevMode#
    Dispose PHANDLE#
    Dispose DevMode2#

Endproc

Drucker_Orientation_Um
n 2

...sans Worte
 
13.01.2005  
 



NT-basierte Windowsversionen avons malheureusement quoi vers den Flag DM_UPDATE (wird là pas soutenu). je travaille à einer amélioration...
 
18.01.2005  
 



Stimmt malheureusement - o.g. Source ändert aussi encore nix.

alors sauinteressant wäre aussi cela Changement qui Beidseiten-Einstellung Abb.1

Salve, iF

13 kB
Kurzbeschreibung: Abb.1
Hochgeladen:18.01.2005
Downloadcounter619
Download
 
18.01.2005  
 



allô IF...

Zusatz: Ändert encore rien sous WindowsNT/2000/XP!

Pour qui Changement sous 2000/NT/XP nécessaire on qui API DrvDocumentPropertySheets - je denke la fois, avec cela peux du alles changement.
qui DEVMODE Struktur auszulesen (benötigts du, um Druckereinstellungen trop mettons) - ist ne...aucune Problem - tut qui Quellcode oui déjà bestens.

Profan peux on im Hintergrund aucun DEVMODE Struktur avec sur den weg donner (ou bien cet austauschen), à Einstellungen qui speziellen Druckseite im Hintergrund trop bestimmen. Pour STARTPRINT verläuft alles im le sable => Bernhard Künzel hatte droite!
Um avec Profan vernünftig drucken trop peut, wäre es extrem de Vorteil, Profan une DEVMODE Struktur chez Startprint optionnel transfert trop peut.

je versuche c'est pourquoi, qui Standarteinstellungen, d.h. qui standart DEVMODE Struktur, eines Druckers trop changement. Profan liest cet chez Startprint aus et verwendet vous pour den Ausdruck qui Druckseite.

Um weierzukommen, brauche je qui Werte qui Konstanten qui Funktion DrvDocumentPropertySheets - sous anderem PROPSHEETUI_REASON_INIT. wohin bekomme je qui weg? comment deklariere je qui Funktion DrvDocumentPropertySheets? il me faut là dringend Aider - qui hat Lust mitzubasteln??
Anregungen et répondre trop dem Thema s'il te plaît [...]  posten...
 
18.01.2005  
 



ici ist Besserung. Bislang funktioniert que voici überall:
KompilierenMarqueSéparation
DEF @GetProfileString(5) !kernel32,GetProfileStringA
DEF @OpenPrinter(3) !winspool.drv,OpenPrinterA
DEF @DocumentProperties(6) !winspool.drv,DocumentPropertiesA
DEF @ClosePrinter(1) !winspool.drv,ClosePrinter
DEF @GetLastError(0) !kernel32,GetLastError
DEF @DocumentPropertiesW(6) !winspool.drv,DocumentPropertiesW
DEF &Ver_Platform_Win32_Windows 1
DEF &Ver_Platform_Win32_NT 2
Struct OSVERSIONINFO = dwOSVersionInfoSize&,dwMajorVersion&,dwMinorVersion&,dwBuildNumber&,dwPlatformId&,szCSDVersion$(128)

Proc Drucker_Orientation_Umstellen

    Parameters Orientation% 1=Hochformat, 2=Querformat
    Declare WINVER&,OS#
    Declare SectionName$,KeyName$,DefautString$,ReturnBuffer#,Printername$,PHANDLE#,Länge2&
    Declare Pdevice$,Count&,Länge&,DevMode#,DevMode2#,Länge&,Fehler&,Offset&,Zähler&
    Declare Found%,Länge2&,Vergleich&
    Declare count#,Pointer_TO_DEVMODE&
    Dim OS#,OSVERSIONINFO
    OS#.dwOSVersionInfoSize& = 148
    External(Kernel32,GetVersionExA,OS#)
    LET Winver& = 8

    If OS#.dwPlatformId& = &Ver_Platform_Win32_Windows

        If OS#.dwMajorVersion& = 4

            Case OS#.dwMinorVersion& = 0  : Winver& = 1
            Case OS#.dwMinorVersion& = 10 : Winver& = 2
            Case OS#.dwMinorVersion& = 90 : Winver& = 3

        Endif

    ElseIf OS#.dwPlatformId& = &Ver_Platform_Win32_NT

        Case OS#.dwMajorVersion& = 3 : Winver& = 4
        Case OS#.dwMajorVersion& = 4 : Winver& = 5
        Case OS#.dwMajorVersion& = 5 : Winver& = 6
        Case OS#.dwMinorVersion& = 1 : Winver& = 7

    Endif

    Dispose OS#
    DIM ReturnBuffer#,256
    Addstring Ausrichtung soll auf +@STR$(Orientation%)+ gesetzt werden!
    Let SectionName$=Windows
    Let KeyName$=device
    DefautString$=
    @GetProfileString(@ADDR(SectionName$),@ADDR(KeyName$),@ADDR(DefautString$),ReturnBuffer#,256)
    LET Printername$=@SubStr$(@STRING$(ReturnBuffer#,0),1,,)
    Addstring Aus WIN.INI ausgelesener Standarddrucker: +Printername$
    Dispose ReturnBuffer#
    LET Pdevice$=

    IF WinVer&<6

        DIM PHANDLE#,4
        LET Fehler&=@OpenPrinter(@ADDR(Printername$),PHANDLE#,0)
        Addstring Fehlercode OpenPrinter: +@STR$(Fehler&)
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzte API: +@STR$(Fehler&)
        LET Länge&=@DocumentProperties(%HWND,@Long(PHANDLE#,0),@ADDR(Pdevice$),0,0,0)
        Addstring Länge der DEVMODE Struktur: +@STR$(Länge&)
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzte API: +@STR$(Fehler&)
        DIM DevMode#,Länge&
        DIM DevMode2#,Länge&
        LET FEHLER&=@DocumentProperties(%HWND,@Long(PHANDLE#,0),@ADDR(Pdevice$),DevMode#,0,2)
        Addstring Rückgabe von DocumentProperties beim Auslesen der Struktur: +@STR$(Fehler&)
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzte API: +@STR$(Fehler&)
        LET FEHLER&=@DocumentProperties(%HWND,@Long(PHANDLE#,0),@ADDR(Pdevice$),DevMode2#,0,2)
        Addstring Rückgabe von DocumentProperties beim Auslesen der Struktur: +@STR$(Fehler&)
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzte API: +@STR$(Fehler&)
        LET Fehler&=@Word(DevMode#,44)
        Addstring Alte Ausgelesene Ausrichtung: +@STR$(Fehler&)
        Long DevMode#,40=1
        Word DevMode#,44=Orientation%
        LET FEHLER&=@DocumentProperties(%HWND,@Long(PHANDLE#,0),@ADDR(Pdevice$),DevMode#,DevMode#,8 | 2 | 1)
        Addstring Rückgabe von DocumentProperties beim Setzen der Eigenschaft: +@STR$(Fehler&)
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzte API: +@STR$(Fehler&)
        Let Fehler&=@ClosePrinter(@Long(PHANDLE#,0))
        Addstring Rückgabe von ClosePrinter: +@STR$(Fehler&)
        LET Fehler&=@OpenPrinter(@ADDR(Printername$),PHANDLE#,0)
        Addstring Fehlercode OpenPrinter: +@STR$(Fehler&)
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzte API: +@STR$(Fehler&)
        LET FEHLER&=@DocumentProperties(%HWND,@Long(PHANDLE#,0),@ADDR(Pdevice$),DevMode2#,0,2)
        Addstring Rückgabe von DocumentProperties beim Auslesen der Struktur: +@STR$(Fehler&)
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzte API: +@STR$(Fehler&)
        LET Fehler&=@Word(DevMode#,44)
        Addstring Neue Ausgelesene Ausrichtung: +@STR$(Fehler&)
        Let Fehler&=@ClosePrinter(@Long(PHANDLE#,0))
        Addstring Rückgabe von ClosePrinter: +@STR$(Fehler&)
        Dispose DevMode#
        Dispose PHANDLE#
        Dispose DevMode2#

    Else

        DIM PHANDLE#,4
        LET Fehler&=@OpenPrinter(@ADDR(Printername$),PHANDLE#,0)
        Addstring Fehlercode OpenPrinter: +@STR$(Fehler&)
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzte API: +@STR$(Fehler&)
        LET Länge2&=@DocumentPropertiesW(%HWND,@Long(PHANDLE#,0),@ADDR(Pdevice$),0,0,0)
        Addstring Länge der DEVMODE Struktur: +@STR$(Länge2&)
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzte API: +@STR$(Fehler&)
        DIM DevMode#,Länge2&+256
        LET FEHLER&=@DocumentPropertiesW(%HWND,@Long(PHANDLE#,0),@ADDR(Pdevice$),DevMode#,0,2)
        Addstring Rückgabe von DocumentProperties beim Auslesen der Struktur: +@STR$(Fehler&)
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzte API: +@STR$(Fehler&)
        DISPOSE DevMode2#
        DIM DevMode2#,10001
        Let Fehler&=@ClosePrinter(@Long(PHANDLE#,0))
        Addstring Rückgabe von ClosePrinter: +@STR$(Fehler&)
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzter API vor dem Auslesen von DEVMODE: +@STR$(Fehler&)
        SHELL rundll32 printui.dll,PrintUIEntry /Ss /n +CHR$(34)+Printername$+CHR$(34)+ /a +CHR$(34)+C:PDEVMODE.DAT+CHR$(34)+ u
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzter API nach dem Auslesen von DEVMODE: +@STR$(Fehler&)
        SLeep 1000
        ASSIGN #1,C:PDEVMODE.DAT
        OpenRW #1
        LET Länge&=@BlockRead(#1,DevMode2#,0,10000)
        CloseRW #1
        Addstring Länge der Datei: +@STR$(Länge&)
        LET OFFSET&=0
        LET FOUND%=1
        LET Zähler&=0

        While @AND(Found%=1,OFFSET&<(Länge&-72))

            Let FOUND%=0

            While @AND(Found%=0,Zähler&<70)

                LET VERGLEICH&=Offset&+Zähler&
                LET FOUND%=0

                IF @BYTE(DevMode#,Zähler&)<>@Byte(DevMode2#,VERGLEICH&)

                    LET Found%=1

                endif

                LET Zähler&=Zähler&+1

            WEND

            if Zähler&<70

                LET FOUND%=1
                LET ZÄHLER&=0
                LET OFFSET&=OFFSET&+1

            else

                LET FOUND%=10
                LET ZÄHLER&=0

            Endif

        WEND

        IF FOUND%<>10

            Addstring Offset konnte nicht ermittelt werden!
            ASSIGN #2,C:PDEVMODE2.DAT
            OPENRW #2
            BlockWrite #2,DevMode#,0,Länge2&
            CLOSERW #2

        Else

            Addstring Offset liegt bei: +@STR$(OFFSET&)
            LET VERGLEICH&=OFFSET&+44+32
            Addstring Alte Ausgelesene Ausrichtung: +@STR$(@WORD(DevMode2#,Vergleich&))

            IF @or(@WORD(DevMode2#,Vergleich&)=1,@WORD(DevMode2#,Vergleich&)=2)

                WORD DevMode2#,VERGLEICH&=Orientation%
                OPENRW #1
                BlockWrite #1,DevMode2#,0,Länge&
                CloseRW #1
                Sleep 1000
                Let Fehler&=@GetLastError()
                Addstring Fehlercode letzter API vor dem Setzen von DEVMODE: +@STR$(Fehler&)
                SHELL rundll32 printui.dll,PrintUIEntry /Sr /n +CHR$(34)+Printername$+CHR$(34)+ /a +CHR$(34)+C:PDEVMODE.DAT+CHR$(34)+ u
                Let Fehler&=@GetLastError()
                Addstring Fehlercode letzter API nach dem Setzen von DEVMODE: +@STR$(Fehler&)
                Sleep 1000
                ERASE #1

            else

                Addstring Devmode Offset nicht gefunden!

            endif

        endif

        LET Fehler&=@OpenPrinter(@ADDR(Printername$),PHANDLE#,0)
        Addstring Fehlercode OpenPrinter: +@STR$(Fehler&)
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzte API: +@STR$(Fehler&)
        LET FEHLER&=@DocumentProperties(%HWND,@Long(PHANDLE#,0),@ADDR(Pdevice$),DevMode2#,0,2)
        Addstring Rückgabe von DocumentProperties beim Auslesen der Struktur: +@STR$(Fehler&)
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzte API: +@STR$(Fehler&)
        LET Fehler&=@Word(DevMode2#,44)
        Addstring Neue Ausgelesene Ausrichtung: +@STR$(Fehler&)
        Let Fehler&=@ClosePrinter(@Long(PHANDLE#,0))
        Addstring Rückgabe von ClosePrinter: +@STR$(Fehler&)
        Dispose PHANDLE#
        Dispose DevMode2#
        Dispose DevMode#

    ENDIF

Endproc

Drucker_Orientation_Umstellen 2 class=s4 href='./../../function-references/XProfan/editbox/'>EDitBox(Ruckgaben,1)

à einer Druck PCU wird à anderer Stelle bereits gearbeitet...
 
27.01.2005  
 




CB
Rückgabe chez meinem Heim-Netzwerk (WLAN avec im Router integrierten Printserver):
KompilierenMarqueSéparation
Salut,
Christian
 
XProfan 8/9.1, Win XP, AMD 64/3200
27.01.2005  
 



qui PRINTUI.DLL liest qui DEVMODE Struktur aus qui Registry aus. cette Key wird mais seulement erzeugt, si le Ausrichtung un la fois per main sur Querformat umgestellt wurde. je veux espérer, qui cela mon dernier Voir le texte source trop diesem Thema wird:
KompilierenMarqueSéparation
DEF @GetProfileString(5) !kernel32,GetProfileStringA
DEF @OpenPrinter(3) !winspool.drv,OpenPrinterA
DEF @DocumentProperties(6) !winspool.drv,DocumentPropertiesA
DEF @ClosePrinter(1) !winspool.drv,ClosePrinter
DEF @GetLastError(0) !kernel32,GetLastError
DEF @DocumentPropertiesW(6) !winspool.drv,DocumentPropertiesW
DEF @RegCREATEKEY(3)!ADVAPI32,RegCreateKeyA Schlüssel erstellen
def @RegSetValueEx(6) !ADVAPI32,RegSetValueExA
def @RegCloseKey(1) !ADVAPI32,RegCloseKey
DEF &Ver_Platform_Win32_Windows 1
DEF &Ver_Platform_Win32_NT 2
Struct OSVERSIONINFO = dwOSVersionInfoSize&,dwMajorVersion&,dwMinorVersion&,dwBuildNumber&,dwPlatformId&,szCSDVersion$(128)

Proc Drucker_Orientation_Umstellen

    Parameters Orientation% 1=Hochformat, 2=Querformat
    Declare WINVER&,OS#
    Declare SectionName$,KeyName$,DefautString$,ReturnBuffer#,Printername$,PHANDLE#,Länge2&
    Declare Pdevice$,Count&,Länge&,DevMode#,DevMode2#,Länge&,Fehler&,Offset&,Zähler&
    Declare Found%,Länge2&,Vergleich&,SubKey$
    Declare count#,Pointer_TO_DEVMODE&,Handle#
    Dim OS#,OSVERSIONINFO
    OS#.dwOSVersionInfoSize& = 148
    External(Kernel32,GetVersionExA,OS#)
    LET Winver& = 8

    If OS#.dwPlatformId& = &Ver_Platform_Win32_Windows

        If OS#.dwMajorVersion& = 4

            Case OS#.dwMinorVersion& = 0  : Winver& = 1
            Case OS#.dwMinorVersion& = 10 : Winver& = 2
            Case OS#.dwMinorVersion& = 90 : Winver& = 3

        Endif

    ElseIf OS#.dwPlatformId& = &Ver_Platform_Win32_NT

        Case OS#.dwMajorVersion& = 3 : Winver& = 4
        Case OS#.dwMajorVersion& = 4 : Winver& = 5
        Case OS#.dwMajorVersion& = 5 : Winver& = 6
        Case OS#.dwMinorVersion& = 1 : Winver& = 7

    Endif

    Dispose OS#
    DIM ReturnBuffer#,256
    Addstring Ausrichtung soll auf +@STR$(Orientation%)+ gesetzt werden!
    Let SectionName$=Windows
    Let KeyName$=device
    DefautString$=
    @GetProfileString(@ADDR(SectionName$),@ADDR(KeyName$),@ADDR(DefautString$),ReturnBuffer#,256)
    LET Printername$=@SubStr$(@STRING$(ReturnBuffer#,0),1,,)
    Addstring Aus WIN.INI ausgelesener Standarddrucker: +Printername$
    Dispose ReturnBuffer#
    LET Pdevice$=

    IF WinVer&<6

        DIM PHANDLE#,4
        LET Fehler&=@OpenPrinter(@ADDR(Printername$),PHANDLE#,0)
        Addstring Fehlercode OpenPrinter: +@STR$(Fehler&)
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzte API: +@STR$(Fehler&)
        LET Länge&=@DocumentProperties(%HWND,@Long(PHANDLE#,0),@ADDR(Pdevice$),0,0,0)
        Addstring Länge der DEVMODE Struktur: +@STR$(Länge&)
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzte API: +@STR$(Fehler&)
        DIM DevMode#,Länge&
        DIM DevMode2#,Länge&
        LET FEHLER&=@DocumentProperties(%HWND,@Long(PHANDLE#,0),@ADDR(Pdevice$),DevMode#,0,2)
        Addstring Rückgabe von DocumentProperties beim Auslesen der Struktur: +@STR$(Fehler&)
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzte API: +@STR$(Fehler&)
        LET FEHLER&=@DocumentProperties(%HWND,@Long(PHANDLE#,0),@ADDR(Pdevice$),DevMode2#,0,2)
        Addstring Rückgabe von DocumentProperties beim Auslesen der Struktur: +@STR$(Fehler&)
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzte API: +@STR$(Fehler&)
        LET Fehler&=@Word(DevMode#,44)
        Addstring Alte Ausgelesene Ausrichtung: +@STR$(Fehler&)
        Long DevMode#,40=1
        Word DevMode#,44=Orientation%
        LET FEHLER&=@DocumentProperties(%HWND,@Long(PHANDLE#,0),@ADDR(Pdevice$),DevMode#,DevMode#,8 | 2 | 1)
        Addstring Rückgabe von DocumentProperties beim Setzen der Eigenschaft: +@STR$(Fehler&)
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzte API: +@STR$(Fehler&)
        Let Fehler&=@ClosePrinter(@Long(PHANDLE#,0))
        Addstring Rückgabe von ClosePrinter: +@STR$(Fehler&)
        LET Fehler&=@OpenPrinter(@ADDR(Printername$),PHANDLE#,0)
        Addstring Fehlercode OpenPrinter: +@STR$(Fehler&)
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzte API: +@STR$(Fehler&)
        LET FEHLER&=@DocumentProperties(%HWND,@Long(PHANDLE#,0),@ADDR(Pdevice$),DevMode2#,0,2)
        Addstring Rückgabe von DocumentProperties beim Auslesen der Struktur: +@STR$(Fehler&)
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzte API: +@STR$(Fehler&)
        LET Fehler&=@Word(DevMode#,44)
        Addstring Neue Ausgelesene Ausrichtung: +@STR$(Fehler&)
        Let Fehler&=@ClosePrinter(@Long(PHANDLE#,0))
        Addstring Rückgabe von ClosePrinter: +@STR$(Fehler&)
        Dispose DevMode#
        Dispose PHANDLE#
        Dispose DevMode2#

    Else

        DIM PHANDLE#,4
        LET Fehler&=@OpenPrinter(@ADDR(Printername$),PHANDLE#,0)
        Addstring Fehlercode OpenPrinter: +@STR$(Fehler&)
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzte API: +@STR$(Fehler&)
        LET Länge2&=@DocumentPropertiesW(%HWND,@Long(PHANDLE#,0),@ADDR(Pdevice$),0,0,0)
        Addstring Länge der DEVMODE Struktur: +@STR$(Länge2&)
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzte API: +@STR$(Fehler&)
        DIM DevMode#,Länge2&
        LET FEHLER&=@DocumentPropertiesW(%HWND,@Long(PHANDLE#,0),@ADDR(Pdevice$),DevMode#,0,2)
        Addstring Rückgabe von DocumentProperties beim Auslesen der Struktur: +@STR$(Fehler&)
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzte API: +@STR$(Fehler&)
        LET Fehler&=@Word(DevMode#,44+32)
        Addstring Alte Ausgelesene Ausrichtung: +@STR$(Fehler&)
        DIM DevMode2#,Länge2&
        Let Fehler&=@ClosePrinter(@Long(PHANDLE#,0))
        Addstring Rückgabe von ClosePrinter: +@STR$(Fehler&)
        WORD DEVMODE#,44+32=Orientation%
        Dim Handle#,4
        LET SubKey$=PrintersDevModePerUser
        @RegCREATEKEY($80000001,@addr(SubKey$),Handle#)
        @RegSetValueEx(@LONG(Handle#,0),@ADDR(Printername$),0,3,DEVMODE#,Länge2&)
        @RegCloseKey(@LONG(Handle#,0))
        LET SubKey$=PrintersDevModes2
        @RegCREATEKEY($80000001,@addr(SubKey$),Handle#)
        @RegSetValueEx(@LONG(Handle#,0),@ADDR(Printername$),0,3,DEVMODE#,Länge2&)
        @RegCloseKey(@LONG(Handle#,0))
        Dispose Handle#
        @Sendmessage($FFFF,$001A,0,0)
        @Sendmessage($FFFF,$001B,0,0)
        LET Fehler&=@OpenPrinter(@ADDR(Printername$),PHANDLE#,0)
        Addstring Fehlercode OpenPrinter: +@STR$(Fehler&)
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzte API: +@STR$(Fehler&)
        LET FEHLER&=@DocumentPropertiesW(%HWND,@Long(PHANDLE#,0),@ADDR(Pdevice$),DevMode2#,0,2)
        Addstring Rückgabe von DocumentProperties beim Auslesen der Struktur: +@STR$(Fehler&)
        Let Fehler&=@GetLastError()
        Addstring Fehlercode letzte API: +@STR$(Fehler&)
        LET Fehler&=@Word(DevMode2#,44+32)
        Addstring Neue Ausgelesene Ausrichtung: +@STR$(Fehler&)
        Let Fehler&=@ClosePrinter(@Long(PHANDLE#,0))
        Addstring Rückgabe von ClosePrinter: +@STR$(Fehler&)
        Dispose PHANDLE#
        Dispose DevMode2#
        Dispose DevMode#

    ENDIF

Endproc

Drucker_Orientation_Umstellen 2
@E
(Ruckgaben,1)

Vielen Dank à alle fleißigen Tester (es étions une ganze la quantité)...
 
30.01.2005  
 




Ausrichtung soll sur 1 gesetzt volonté!
Aus WIN.INI ausgelesener Standarddrucker: Phaser 8400DP-2
Fehlercode OpenPrinter: 1
Fehlercode dernier API: 0
Longueur qui DEVMODE Struktur: 2576
Fehlercode dernier API: 6
Rückgabe de DocumentProperties beim Lecture qui Struktur: 1
Fehlercode dernier API: 122
vieille Ausgelesene Ausrichtung: 2
Rückgabe de ClosePrinter: 1
Fehlercode OpenPrinter: 1
Fehlercode dernier API: 0
Rückgabe de DocumentProperties beim Lecture qui Struktur: 1
Fehlercode dernier API: 122
Neue Ausgelesene Ausrichtung: 1
Rückgabe de ClosePrinter: 1




Ausrichtung soll sur 2 gesetzt volonté!
Aus WIN.INI ausgelesener Standarddrucker: Phaser 8400DP-2
Fehlercode OpenPrinter: 1
Fehlercode dernier API: 0
Longueur qui DEVMODE Struktur: 2576
Fehlercode dernier API: 6
Rückgabe de DocumentProperties beim Lecture qui Struktur: 1
Fehlercode dernier API: 122
vieille Ausgelesene Ausrichtung: 1
Rückgabe de ClosePrinter: 1
Fehlercode OpenPrinter: 1
Fehlercode dernier API: 0
Rückgabe de DocumentProperties beim Lecture qui Struktur: 1
Fehlercode dernier API: 122
Neue Ausgelesene Ausrichtung: 2
Rückgabe de ClosePrinter: 1

Superb, iF
 
30.01.2005  
 



Zum Quelltext


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

6.755 Views

Untitledvor 0 min.
Axel Berse27.07.2022
rquindt24.04.2020
Manfred Barei26.07.2015
Muemmelmann24.09.2014
plus...

Themeninformationen

cet Thema hat 3 participant:

unbekannt (6x)
CB (1x)
iF (1x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie