Español
Foro

GetOpenFileNameA funktioniert no bajo win98

 

Pedro
Santos
¡Hola Profaner

Diesen code Yo glaube de Pascal Niemeier funktioniert prima bajo XP por desgracia, no bajo
Win98, kann alguien el bestätigen. Posesiones GetOpenFileNameA en el Api Win32 nachgeschaut
aber blicke überhaupt Yo no por

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

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

    parámetros dlg&,msg&,wparam&,lparam&
    caso Status%:volver 1-----Ansicht muss sólo una vez adaptado voluntad
    casenot msg&=~WM_NOTIFY:volver 1

    if long(lparam&,8)=-603---En Init existieren DefView y LV todavía no!

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

    endif

    volver 1
    ENDPROC---------------------------------------------------------------------------------

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

        parámetros Pfad$,Titel$,Name$
        declarar ofn#,Result$,Result&
        declarar DefView&,Status%------Variables para Hook
        Name$=Name$+z*.bmp;*.jpe;*.jpeg;*.jpg;*.gifzz--Filter (en Bedarf adaptar)
        dim ofn#,88+256---------------Struktur (Win2000/NT/XP) + Puffer
        clear ofn#
        long ofn#,0=88----------------Grösse Struktur para GetOpenFileName (76 para Win9x)
        long ofn#,4=%hwnd-------------übergeordnetes Ventana
        long ofn#,12=addr(Name$)------Filter/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$=cadena$(ofn#,88)
        casenot Result&:Result$=
        procaddr(OpenFileHook,-4)
        disponer ofn#
        volver Result$
        ENDPROC---------------------------------------------------------------------------------
        imprimir LoadPicDialog(,Wähle Graphic,BMP)
        waitkey
 
Windows XP Home
Xprofan 10
15.07.2006  
 




Michael
Dell
Hi Pedro,

como ya en Uwe`s Ejemplo angedeutet:
Largo Ofn#,0=Gl_Puffer&----------------Grösse Struktur para GetOpenFileName (76 para Win9x)
El Structurgröße muß adaptado voluntad z.B.:
Ventana 10,10-700,500
 $H Messages.ph
 $H Windows.ph
**** Structurgröße a Sistema adaptar ****
Declarar Gl_Puffer&
Gl_Puffer& = 88
Case (Val(Left$($WinVer,1)) = 4): Gl_Puffer& = 76
******************************************

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

    Parámetros Dlg&,Msg&,Wparam&,Lparam&
    Case Status%:Volver 1-----Ansicht muss sólo una vez adaptado voluntad
    Casenot Msg&=~Wm_notify:Volver 1

    If Largo(Lparam&,8)=-603---En Init existieren DefView y LV todavía no!

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

    Endif

    Volver 1
    ENDPROC---------------------------------------------------------------------------------

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

        Parámetros Pfad$,Titel$,Name$
        Declarar Ofn#,Result$,Result&
        Declarar Defview&,Status%------Variables para Hook
        Name$=Name$+z*.bmp;*.jpe;*.jpeg;*.jpg;*.gifzz--Filter (en Bedarf adaptar)
        Dim Ofn#,Gl_Puffer&+256---------------Struktur (Win2000/NT/XP) + Puffer
        Claro Ofn#
        Largo Ofn#,0=Gl_Puffer&----------------Grösse Struktur para GetOpenFileName (76 para Win9x)
        Largo Ofn#,4=%Hwnd-------------übergeordnetes Ventana
        Largo Ofn#,12=Addr(Name$)------Filter/Typ
        Largo Ofn#,28=Ofn#+Gl_Puffer&----------Beginn Puffer
        Largo Ofn#,32=255--------------Puffergrösse
        Largo Ofn#,44=Addr(Pfad$)------Anfangspfad
        Largo Ofn#,48=Addr(Titel$)-----Titel
        Largo Ofn#,52=$880024----------Flags
        Largo Ofn#,68=Procaddr(OpenFileHook,4)
        Result&=Externo(COMDLG32,GetOpenFileNameA,Ofn#)
        Result$=String$(Ofn#,Gl_Puffer&)
        Casenot Result&:Result$=
        procaddr(OpenFileHook,-4)
        Disponer Ofn#
        Volver Result$
        ENDPROC---------------------------------------------------------------------------------
        Imprimir Loadpicdialog(,Wähle Graphic,BMP)
        Waitkey
Ps.: Oder Usted nimmst sólo 76 el va en beiden Systemen. Gibt allerdings no Garantie el lo siempre va!
 
Salu Michael...

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




Pedro
Santos
¡Hola M.Dell

Gracias, habe lo ya gemacht, überall el 88 por 76 ersetzt, el Diálogo erscheint aber
no en el Miniaturen modus, allerdings sólo en una alten notebook laufen gelassen
Werde lo al Montag en una otro PC testen

Gruss

Pedro
 
Windows XP Home
Xprofan 10
15.07.2006  
 




Uwe
''Pascal''
Niemeier
¡Hola Pedro!

Soweit Yo sehe, hay el Miniatur-Ansicht bajo Win98 todavía garnicht...

Hier el Möglichkeiten para el 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

Como puede ser wohl nichts hacer

HTH
Pascal
 
16.07.2006  
 




Pedro
Santos
¡Hola Pascal

Vielen Dank para Su Antwort, en el Tat existiert el Miniaturen Ansicht en Win98 no, desafortunadamente..

Und el ganzen Sendmessages wo puede ser el suchen?

Darum war ya en una otro Tread mein Wunsch el Sendmessasges con Descripción en una Speziellen Rubrik
a recoger, el como Usted ya veces erwähnt hast puede ser así muy viel errreichen

Gracias

Gruss

Pedro
 
Windows XP Home
Xprofan 10
17.07.2006  
 




Jac
de
Lad
El Messages kannst du bajo [web]https://msdn.microsoft.com[/web] nachschauen.
Oder du lädst dir el MSDN runter, entonces hast du lo auch offline.
Oder du nimmst el Platform SDK, el es kleiner y erfüllt el Zweck auch.
Oder du googlest; viele otro Páginas haben el auch alles aufgeführt, manche incluso en Alemán.

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  
 



Respuesta


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

2.031 Views

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

Themeninformationen



Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie