AGB  ·  Datenschutz  ·  Impressum  







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

Format mit SysErrorMessage(..)

Ein Thema von silentAMD · begonnen am 29. Okt 2006 · letzter Beitrag vom 30. Okt 2006
 
silentAMD

Registriert seit: 27. Sep 2003
203 Beiträge
 
Turbo Delphi für Win32
 
#1

Format mit SysErrorMessage(..)

  Alt 29. Okt 2006, 14:36
hi,
in meinem dateimanager können ganz normal dateien mit shellexecute geöffnet werden. falls ein fehler auftritt, soll eine meldung ausgegeben werden.

Delphi-Quellcode:
function TWinMain.shell_open(dirname, filename: PChar): Cardinal;
const
  OPEN_OR_EXP: array[Boolean] of PChar = ('open', 'explore');
begin
  if(filename = nil) then
    filename := '.';
  ShellExecute(Application.Handle, OPEN_OR_EXP[mi_open_exp.Checked and (filename = '.')], filename, nil, dirname, SW_SHOWNORMAL);
  Result := GetLastError();
  if(Result = ERROR_NO_ASSOCIATION) then
  begin
    if Application.MessageBox(PChar(SysErrorMessage(Result)+'.'+#10#13#10#13+'Möchten Sie manuell ein geeignetes Programm auswählen?'),APP_NAME,MB_YESNO or MB_ICONQUESTION) = mrYes then
      ShellExecute(Application.Handle, 'open', 'rundll32.exe', PChar('shell32.dll, OpenAs_RunDLL '+dirname+filename), nil, SW_SHOWNORMAL);
  end
  else if(Result <> ERROR_SUCCESS) then
    Application.MessageBox(PChar(SysErrorMessage(Result))+'.'+#10#13+'(Fehlercode '+IntToStr(Result)+')'),APP_NAME,MB_OK or MB_ICONSTOP);
end;
dies klappt auch ganz gut, allerdings tritt bei fehler ERROR_BAD_EXE_FORMAT (nr 193) ein "%1" in der meldung (%1 ist keine zulässige Win32-Anwendung) auf. ich möchte apikonform das %1 (oder falls es ein "%2" geben sollte) durch den entsprechenden wert ersetzen (hier anscheinend der dateiname)! wie mache ich das???


PLEASE HELP!!!
  Mit Zitat antworten Zitat
 


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 09:56 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