3 Stimmen

Mailto: in URLs ohne installierten E-Mail-Client

Ich bin auf ein Problem gestoßen. Ich zeige einen E-Mail-Link in meiner Benutzeroberfläche an. Wenn der Benutzer auf diesen Link klickt, wird er wie folgt geöffnet:

LPCTSTR url=L"mailto:myemail@gmail.com?subject=my_subject";
ShellExecute(hParentWnd, _T("open"), url, NULL, NULL, SW_SHOWNORMAL);

Dies funktioniert solange, wie Endbenutzer ein E-Mail-Programm installiert haben. Was passiert jedoch, wenn das E-Mail-Programm nicht installiert ist, ist dass der Befehl einfach die Startseite im Standard-Webbrowser öffnet.

Irgendwelche Ideen, wie man das lösen kann?

2voto

Alex K. Punkte 165323

Sie können feststellen, welches ausführbare/Befehl das mailto:-Protokoll mit AssocQueryString("mailto") oder durch Betrachten von hkcr\mailto\shell\open\command behandelt.

Wenn Sie Glück haben, wird dies für eine Maschine ohne gesetzte Verknüpfung leer sein.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X