Wie registriere ich ein benutzerdefiniertes Protokoll bei Windows, damit beim Klicken auf einen Link in einer E-Mail oder auf einer Webseite meine Anwendung geöffnet und die Parameter der URL an diese übergeben werden?
Wie registriere ich ein benutzerdefiniertes Protokoll bei Windows, damit beim Klicken auf einen Link in einer E-Mail oder auf einer Webseite meine Anwendung geöffnet und die Parameter der URL an diese übergeben werden?
Antworten:
Gehen Sie Start
dann in Find
Typ regedit
-> es sollte sich öffnenRegistry editor
Klicken Sie Right Mouseauf HKEY_CLASSES_ROOT
dann New
->Key
testus://sdfsdfsdf
). Klicken Sie dann Right Mouseauf testus
-> dann New
-> String Value
und fügen Sie URL protocol
ohne Wert hinzu.New
-> Key
) und Hierarchie erstellen wie testus
-> shell
-> open
-> command
und innerhalb command
Änderung (Default)
auf den Pfad , in dem .exe
Sie starten möchten , ist, wenn Sie die Parameter auf Ihre exe übergeben wollen , dann wickeln Pfad zu exe in ""
und hinzufügen, "%1"
um auszusehen wie:"c:\testing\test.exe" "%1"
Internet Explorer
(nicht Chrome
oder Firefox
) und geben Sie testus:have_you_seen_this_man
diese sollten Feuer Ihre .exe
(geben Sie einige Anweisungen , dass Sie dies tun wollen - sagen Ja) und gelangen in args testus://have_you_seen_this_man
.Hier ist eine Beispiel-Konsolen-App zum Testen:
using System;
namespace Testing
{
class Program
{
static void Main(string[] args)
{
if (args!= null && args.Length > 0)
Console.WriteLine(args[0]);
Console.ReadKey();
}
}
}
Hoffe das spart dir etwas Zeit.
Ich denke, dies wird in MSDN behandelt. Weitere Informationen finden Sie unter Registrieren einer Anwendung für ein URL-Protokoll .
Der MSDN-Link ist nett, aber die Sicherheitsinformationen dort sind nicht vollständig. Die Handler-Registrierung sollte "% 1" enthalten, nicht% 1. Dies ist eine Sicherheitsmaßnahme, da einige URL-Quellen% 20 falsch dekodieren, bevor Sie Ihren benutzerdefinierten Protokollhandler aufrufen.
PS. Sie erhalten die gesamte URL, nicht nur die URL-Parameter. Neben der bereits erwähnten% 20-> Speicherplatzkonvertierung kann die URL jedoch misshandelt werden. Es ist hilfreich, bei der Gestaltung Ihrer URL-Syntax konservativ zu sein. Wirf kein zufälliges // ein, sonst gerätst du in das Chaos, das file: // ist.