AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Wo ist oder wie heißt die Funktion: SHMessageBoxCheck?
Thema durchsuchen
Ansicht
Themen-Optionen

Wo ist oder wie heißt die Funktion: SHMessageBoxCheck?

Ein Thema von Luckie · begonnen am 2. Mai 2005 · letzter Beitrag vom 3. Jun 2005
Antwort Antwort
Seite 2 von 14     12 3412     Letzte »    
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#11

Re: Wo ist oder wie heißt die Funktion: SHMessageBoxCheck?

  Alt 2. Mai 2005, 18:25
Dann geh das doch mal in Einzelschritten durch und guck, wo der Fehler liegt, deswegen ist ja die Fehlerbehandlucng mit den if's drinne.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Blutiger Anfänger
(Gast)

n/a Beiträge
 
#12

Re: Wo ist oder wie heißt die Funktion: SHMessageBoxCheck?

  Alt 2. Mai 2005, 18:34
Hi,
genau das ist ja das Problem, sonst haette ich das auslesen der DLL nicht versucht,
wenn ich das Programm im EinzelschrittModus laufen lasse, werden alle noetigen
Funktionen erfüllt.
Leider erfolgt keine Bildschirmausgabe mit irgendeiner Meldung!
Fehlermeldungen gibt es auch nicht!
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#13

Re: Wo ist oder wie heißt die Funktion: SHMessageBoxCheck?

  Alt 2. Mai 2005, 20:14
Zitat von Blutiger Anfänger:
Leider erfolgt keine Bildschirmausgabe mit irgendeiner Meldung!
It's no bug, it's a feature! Wenn du dir den Dialog bereits einmal verbeten hast, dann liefert der Aufruf nur noch den Default-Wert - es erfolgt dann keine Ausgabe mehr auf deinem Bildschirm.

Unblutige Grüße vom marabu
  Mit Zitat antworten Zitat
Blutiger Anfänger
(Gast)

n/a Beiträge
 
#14

Re: Wo ist oder wie heißt die Funktion: SHMessageBoxCheck?

  Alt 2. Mai 2005, 20:59
hallo Marabu,

vielen Dank fuer die unblutigen Gruesse, aber es hat bisher noch nie eine Bildschirmausgabe stattgefunden, es ei denn, sie erscheint nicht im Vordergrund und nur fuer einen kurzen Moment,
aber das glaube ich nicht.
Vielleicht bin ich einfach nur zu blöde, obwohl ich ja nur den Code von Michael kopiert und in ein
neu erstelltes Formular mit einem Button eingefügt habe.
Nur wenn es bei allen anderen funktioniert, wird es wohl an mir liegen !!

Danke trotzdem
Gruss Opa
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#15

Re: Wo ist oder wie heißt die Funktion: SHMessageBoxCheck?

  Alt 2. Mai 2005, 21:09
Hallo Opa,

schau mal in der Registry nach, ob der Dialog da eingetragen ist:

Code:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\DontShowMeThisDialogAgain
marabu
  Mit Zitat antworten Zitat
Blutiger Anfänger
(Gast)

n/a Beiträge
 
#16

Re: Wo ist oder wie heißt die Funktion: SHMessageBoxCheck?

  Alt 2. Mai 2005, 21:19
Hi Marabu,

nein, der Eintrag ist nicht vorhanden !
  Mit Zitat antworten Zitat
Benutzerbild von Sprint
Sprint

Registriert seit: 18. Aug 2004
Ort: Edewecht
712 Beiträge
 
Delphi 5 Professional
 
#17

Re: Wo ist oder wie heißt die Funktion: SHMessageBoxCheck?

  Alt 2. Mai 2005, 21:24
Zitat von Luckie:
Delphi-Quellcode:
{...}
  hLib := LoadLibrary('shlwapi.dll');
  if hLib <> INVALID_HANDLE_VALUE then
{...}
Hinweis: Sollte LoadLibrary fehlschlagen, dann ist der Rückgabewert gleich null. Und nicht $FFFFFFFF (-1).
Ciao, Sprint.

"I don't know what I am doing, but I am sure I am having fun!"
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#18

Re: Wo ist oder wie heißt die Funktion: SHMessageBoxCheck?

  Alt 2. Mai 2005, 21:28
Zitat von Sprint:
Hinweis: Sollte LoadLibrary fehlschlagen, dann ist der Rückgabewert gleich null. Und nicht $FFFFFFFF (-1).
Verdammt. Blöde API.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
brechi

Registriert seit: 30. Jan 2004
823 Beiträge
 
#19

Re: Wo ist oder wie heißt die Funktion: SHMessageBoxCheck?

  Alt 2. Mai 2005, 21:29
hab auch in einem anderen Post von dir (luckie) gelesen das du auch mal eine dll so geladen hast:

Delphi-Quellcode:
h := GetModuleHandle('bla.dll')
if h = 0 {bzw bei dir INVALIDHANDLEVALUE was aber falsch ist} then
  h := LoadLibrary('bla.dll');
das würde ich auf keinem fall so machen aus dem einfachen grund wenn eine andere dll FreeLibrary('bla.dll') ausführt
die dll freigegeben wird und bei jedem aufruf eines exports später es einen crash gibt

lädt man die dll aber ein 2. mal mit LoadLibrary('bla.dll') dann kann die andere dll ruhig FreeLibrary('bla.dll') machen
solange der "loadcount" nicht 0 ist wird die dll nicht freigegeben und du kannst sie ohne probleme weiterbenutzen

ausserdem ist es kürzer
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#20

Re: Wo ist oder wie heißt die Funktion: SHMessageBoxCheck?

  Alt 2. Mai 2005, 21:33
Ist ja mittlerweile korrigiert. Aber es ist nochnicht geklärt, warum es bei dem einem Benutzer noch nicht geht.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 14     12 3412     Letzte »    


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:31 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz