Français
Forum

GetOpenFileNameA funktioniert pas sous win98

 

Pedro
Santos
allô Profaner

Diesen code je crois de Pascal Niemeier funktioniert prima sous XP malheureusement pas sous
Win98, peux quelqu'un cela bestätigen. Habe GetOpenFileNameA dans qui Api Win32 nachgeschaut
mais blicke überhaupt je pas par

merci
Gruss
Pedro
window 10,10-700,500
 $H Messages.ph
 $H Windows.ph

proc OpenFileHook-------------------------------OpenFileHook----------------------------

    parameters dlg&,msg&,wparam&,lparam&
    cas Status%:return 1-----Ansicht muss seulement einmal angepasst volonté
    casenot msg&=~WM_NOTIFY:return 1

    si long(lparam&,8)=-603---chez Init existieren DefView et LV encore pas!

        Status%=1
        DefView&=~FindWindowEx(~GetParent(dlg&),0,SHELLDLL_DefView,)
        sendmessage(DefView&,~WM_COMMAND,$702D,0)--Undokumentierte Message

    endif

    return 1
    endproc---------------------------------------------------------------------------------

    proc LoadPicDialog------------------------------LoadPicDialog---------------------------

        parameters Pfad$,Titel$,nom$
        declare ofn#,Result$,Result&
        declare DefView&,Status%------Variablen pour Hook
        nom$=nom$+z*.bmp;*.jpe;*.jpeg;*.jpg;*.gifzz--filtre (chez besoin anpassen)
        dim ofn#,88+256---------------Struktur (Win2000/NT/XP) + Puffer
        clear ofn#
        long ofn#,0=88----------------Grösse Struktur pour GetOpenFileName (76 pour Win9x)
        long ofn#,4=%hwnd-------------übergeordnetes la fenêtre
        long ofn#,12=addr(nom$)------filtre/Typ
        long ofn#,28=ofn#+88----------Beginn Puffer
        long ofn#,32=255--------------Puffergrösse
        long ofn#,44=addr(Pfad$)------Anfangspfad
        long ofn#,48=addr(Titel$)-----Titel
        long ofn#,52=$880024----------Flags
        long ofn#,68=procaddr(OpenFileHook,4)
        Result&=external(COMDLG32,GetOpenFileNameA,ofn#)
        Result$=string$(ofn#,88)
        casenot Result&:Result$=
        procaddr(OpenFileHook,-4)
        dispose ofn#
        return Result$
        endproc---------------------------------------------------------------------------------
        imprimer LoadPicDialog(,Wähle Graphic,BMP)
        waitkey
 
Windows XP Home
Xprofan 10
15.07.2006  
 




Michael
Dell
Hi Pedro,

comment déjà dans Uwe`s Beispiel angedeutet:
Long Ofn#,0=Gl_Puffer&----------------Grösse Struktur pour GetOpenFileName (76 pour Win9x)
qui Structurgröße doit angepasst volonté z.B.:
Fenêtre 10,10-700,500
 $H Messages.ph
 $H Windows.ph
**** Structurgröße à System anpassen ****
Déclarer Gl_Puffer&
Gl_Puffer& = 88
Cas (Val(Left $($WinVer,1)) = 4): Gl_Puffer& = 76
******************************************

Proc Openfilehook-------------------------------OpenFileHook----------------------------

    Paramètres Dlg&,Msg&,Wparam&,Lparam&
    Cas Status%:Retour 1-----Ansicht muss seulement einmal angepasst volonté
    Casenot Msg&=~Wm_notify:Retour 1

    Si Long(Lparam&,8)=-603---chez Init existieren DefView et LV encore pas!

        Status%=1
        Defview&=~Findwindowex(~Getparent(Dlg&),0,SHELLDLL_DefView,)
        SendMessage(Defview&,~Wm_command,$702D,0)--Undokumentierte Message

    Endif

    Retour 1
    ENDPROC---------------------------------------------------------------------------------

    Proc Loadpicdialog------------------------------LoadPicDialog---------------------------

        Paramètres Pfad$,Titel$,nom$
        Déclarer Ofn#,Result$,Result&
        Déclarer Defview&,Status%------Variablen pour Hook
        nom$=nom$+z*.bmp;*.jpe;*.jpeg;*.jpg;*.gifzz--filtre (chez besoin anpassen)
        Faible Ofn#,Gl_Puffer&+256---------------Struktur (Win2000/NT/XP) + Puffer
        Claire Ofn#
        Long Ofn#,0=Gl_Puffer&----------------Grösse Struktur pour GetOpenFileName (76 pour Win9x)
        Long Ofn#,4=%Hwnd-------------übergeordnetes la fenêtre
        Long Ofn#,12=Addr(nom$)------filtre/Typ
        Long Ofn#,28=Ofn#+Gl_Puffer&----------Beginn Puffer
        Long Ofn#,32=255--------------Puffergrösse
        Long Ofn#,44=Addr(Pfad$)------Anfangspfad
        Long Ofn#,48=Addr(Titel$)-----Titel
        Long Ofn#,52=$880024----------Flags
        Long Ofn#,68=Procaddr(OpenFileHook,4)
        Result&=Externe(COMDLG32,GetOpenFileNameA,Ofn#)
        Result$=String$(Ofn#,Gl_Puffer&)
        Casenot Result&:Result$=
        procaddr(OpenFileHook,-4)
        Dispose Ofn#
        Retour Result$
        ENDPROC---------------------------------------------------------------------------------
        Imprimer Loadpicdialog(,Wähle Graphic,BMP)
        Waitkey
Ps.: ou bien tu prends seulement 76 cela allez sur beiden Systemen. Gibt allerdings aucun garantie cela es toujours allez!
 
Salu Michael...

Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! 
15.07.2006  
 




Pedro
Santos
allô M.Dell

merci, habe es déjà gemacht, überall qui 88 par 76 ersetzt, qui Dialog erscheint mais
pas im Miniaturen modus, allerdings seulement sur une alten notebook courir gelassen
Werde es am lundi sur une anderen PC testen

Gruss

Pedro
 
Windows XP Home
Xprofan 10
15.07.2006  
 




Uwe
''Pascal''
Niemeier
allô Pedro!

Soweit je vois, gibt es qui Miniatur-Ansicht sous Win98 encore garnicht...

ici qui Opportunités pour den Hook:

Win XP:
sendmessage(DefView&,~WM_COMMAND,$702A,0)--Symbole
sendmessage(DefView&,~WM_COMMAND,$702B,0)--liste
sendmessage(DefView&,~WM_COMMAND,$702C,0)--Details
sendmessage(DefView&,~WM_COMMAND,$702D,0)--Miniaturansicht
sendmessage(DefView&,~WM_COMMAND,$702E,0)--Kacheln

Win 98:
sendmessage(DefView&,~WM_COMMAND,$7029,0)--grosse Symbole
sendmessage(DefView&,~WM_COMMAND,$702A,0)--kleine Smbole
sendmessage(DefView&,~WM_COMMAND,$702B,0)--liste
sendmessage(DefView&,~WM_COMMAND,$702C,0)--Details

là peux on wohl rien faire

HTH
Pascal
 
16.07.2006  
 




Pedro
Santos
allô Pascal

Vielen Dank pour Votre Antwort, dans qui acte existiert qui Miniaturen Ansicht chez Win98 pas, malheureusement..

et qui ganzen Sendmessages wohin peux on qui chercher?

tout autor était déjà dans une anderen Tread mon Wunsch qui Sendmessasges avec Beschreibung dans une Speziellen Rubrik
trop ramasser, den comment Du déjà la fois erwähnt la hâte peux on avec cela très viel errreichen

merci

Gruss

Pedro
 
Windows XP Home
Xprofan 10
17.07.2006  
 




Jac
de
Lad
qui Messages peux du sous [web]https://msdn.microsoft.com[/web] chercher.
ou bien du lädst dir cela MSDN runter, ensuite la hâte du es aussi offline.
ou bien tu prends cela Platform SDK, c'est kleiner et erfüllt den Zweck aussi.
ou bien du googlest; viele autre Seiten avons cela aussi alles aufgeführt, manche sogar sur allemande.

Jac
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
18.05.2008  
 



répondre


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

2.038 Views

Untitledvor 0 min.
E.T.06.11.2014
gerd27.08.2013

Themeninformationen



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