AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

ShellExecute 42, GetLastError 126

Ein Thema von hoika · begonnen am 8. Jun 2017 · letzter Beitrag vom 8. Jun 2017
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#11

AW: ShellExecute 42, GetLastError 126

  Alt 8. Jun 2017, 18:39
Im Erfolgsfalle ist der Wert von MSDN-Library durchsuchenGetLastError nämlich immer undefiniert.
Undefiniert nicht.
Der Wert passt ja definitiv zum letzten Fehler, irgendeiner vorher aufgerufenen WinAPI-Funktion, bzw. vom letzten SetLastError.
$2B or not $2B
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#12

AW: ShellExecute 42, GetLastError 126

  Alt 8. Jun 2017, 19:15
Das würde ich ja schon als ziemlich undefiniert bezeichnen Vor allem, wenn der letzte API Aufruf erfolgreich war, man aber nur auf GetLastError != 0 prüft, gibt es massive Probleme.
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.648 Beiträge
 
Delphi 11 Alexandria
 
#13

AW: ShellExecute 42, GetLastError 126

  Alt 8. Jun 2017, 20:23
Man kann vorher auch SetLastError benutzen um das zu vermeiden.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#14

AW: ShellExecute 42, GetLastError 126

  Alt 8. Jun 2017, 21:56
Man kann vorher auch SetLastError benutzen um das zu vermeiden.
Jain.

Laut Definition gibt diese API nur einen LastError zurück, wenn das Result sagt, dass was kaputt ist.

Jetzt kann diese API aber intern weitere APIs aufrufen und Diese auch usw.
Aber nur weil eine der internen APIs einen Fehler meldete, heißt das noch lange nicht, dass "unsere" API auch 'nen Fehler liefert. (die kann ja intern noch einen alternativen Weg gehen, oder so)

Tja, wenn du vorher z.B. SetLastError(NO_ERROR) nutzt und hinterher der GetLastError was Anderes sagt, dann hat das rein garnichts zu sagen, so lange das Result sagt "ich bin OK".
$2B or not $2B
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.648 Beiträge
 
Delphi 11 Alexandria
 
#15

AW: ShellExecute 42, GetLastError 126

  Alt 8. Jun 2017, 22:05
Ich wollte damit auch nicht sagen, dass man das so machen sollte.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#16

AW: ShellExecute 42, GetLastError 126

  Alt 8. Jun 2017, 22:13
Hallo,
Thema ist beendet, ich hatte ja SW_HIDE (0) übergeben.

Danke !
Heiko
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 13:15 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