![]() |
E-Mail Client aus Delphi starten
Hallo Gemeinde,
folgendes Problem: Ich hab eine Delphi 7 Anwendung aus der ich mit ShellExecute(Application.Handle,'open',PChar(Adres se),Nil,Nil,SW_ShowNormal) den StandardMailClient auf Click öffnen möchte. Das Programm ist in Englisch angelegt und über den TranslationManager Deutsch lokalisiert. Nun kommts: In der englischen Version funktioniet das ganze, aber sobald ich mein Windows(XP SP2) auf Deutsch umstelle startet der StandardMailClient nicht mehr. Hat jemand eine Idee dazu? :wall: Gruß NoWu |
Re: E-Mail Client aus Delphi starten
Was sagt die Fehlerauswertung von Shellexecute?
|
Re: E-Mail Client aus Delphi starten
Der Rückgabewert ist 5.
NoWu |
Re: E-Mail Client aus Delphi starten
Zitat:
Code:
Fünf klingt nach: SE_ERR_ACCESSDENIED
0 The operating system is out of memory or resources.
ERROR_FILE_NOT_FOUND The specified file was not found. ERROR_PATH_NOT_FOUND The specified path was not found. ERROR_BAD_FORMAT The .exe file is invalid (non-Microsoft Win32 .exe or error in .exe image). SE_ERR_ACCESSDENIED The operating system denied access to the specified file. SE_ERR_ASSOCINCOMPLETE The file name association is incomplete or invalid. SE_ERR_DDEBUSY The Dynamic Data Exchange (DDE) transaction could not be completed because other DDE transactions were being processed. SE_ERR_DDEFAIL The DDE transaction failed. SE_ERR_DDETIMEOUT The DDE transaction could not be completed because the request timed out. SE_ERR_DLLNOTFOUND The specified DLL was not found. SE_ERR_FNF The specified file was not found. SE_ERR_NOASSOC There is no application associated with the given file name extension. This error will also be returned if you attempt to print a file that is not printable. SE_ERR_OOM There was not enough memory to complete the operation. SE_ERR_PNF The specified path was not found. SE_ERR_SHARE A sharing violation occurred. |
Re: E-Mail Client aus Delphi starten
Hallo Luckie,
Hm.. Rechte kann ich mir eigentlich nicht vorstellen, da ich auf der Maschine Administrator bin. Der Witz an der Sache ist, das das gleiche Codeschnipsel in einem anderen Programm (auch D7) einwandfrei funktioniert. Der einzige Unterschied bei den beiden Programmen ist die Lokalisation. Bei einem Programm über Datenbanken realisiert (hier geht's) beim anderen über Translation Manager (hier geht's nicht). Ich weiß nicht ob es damit zu tun haben könnte. NoWu |
Re: E-Mail Client aus Delphi starten
in Adresse ist da eine "einfache" eMailAdresse drin?
Zitat:
|
Re: E-Mail Client aus Delphi starten
Hi,
Zitat:
Welches Betriebssystem? Administrator bedeutet übrigens nicht automatisch Vollzugriff auf alle Verzeichnisse und Registry-Zweige. (Domänen-)Administrator impliziert lediglich die Möglichekeit diese Rechte zu übernehmen. Es kann also Durchaus ein Verzeichnis oder Registryschlüssel sein, welches Dir unter diesen Umständen den Zugriff (korrekt) verwährt, bis Du diese Berechtigung anpasst. Bestes Beispiel: IE7 Installation nach installiertem SP3 auf WinXP. Hier muß auch in Classes_Root angepasst werden. Ich tippe darauf, daß einmal ein anderer MailClient/Browser installiert war und die mailto-Handler verbogen sind. Zusätzlich empfehle ich das Application.Handle durch 0 bzw. des Windows-Desktop-Handle zu ersetzen:
Delphi-Quellcode:
Wie stellst Du Dein System um, per MUI innerhalb der Sitzung oder hast Du zwei verschiedene Benutzerkonten dafür.
ShellExecute(0,'open',PChar(Adresse),Nil,Nil,SW_ShowNormal)
Gruß Assertor |
Re: E-Mail Client aus Delphi starten
Zitat:
öffnet sich der MailClient auch nicht, wenn du z.B. diese mal manuell eingibst? z.B. über Startmenü > Ausführen oder in die (Internet)Explorer-Adressleiste |
Re: E-Mail Client aus Delphi starten
@himitsu
In Adresse steht:MailTo:xx@yyy-gg.net Mail Adresse funktioniert. Wenn ich in Start - Ausführen MailTo:xx@yy-gg.net eingebe, startet mein Thunderbird wie ich es eigentlich erwarte. @Assertor Ich verstehe dann nur nicht wie es mit gleichem Code, gleicher Maschine, gleichen Rechten mit einem anderen Proggi funktioniert? |
Re: E-Mail Client aus Delphi starten
Hi,
Zitat:
@NoWu: Du kannst versuchen mit dem SysInternals Process Monitor (von Microsoft) nachzuvollziehen, was da schiefgeht. Alles andere ist leider nur Raten. Kannst Du einen definierten Testzustand herstellen, sprich virtuelle Maschine mit sauberer zweisprachiger Installation? Ebenfalls würde ich mal ein Testprojekt erstellen, welches nur das ShellExecute enthält und das über den Translation Manager "übersetzen". Das sind die 3 Wege und Möglichkeiten, die mir spontan einfallen, den Fehler zu finden (durch Eingrenzen). Gruß Assertor |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:45 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz