VB.NET-Tipp 0053: Eigenes Protokoll beim Betriebssystem registrieren lassen
von Eckhart Wörner
Beschreibung
Dieser Tipp soll zeigen, wie man Links aus dem Webbrowser abfängt, die mit einem bestimmten Protokoll anfangen. In der Praxis ist dieses Verfahren bei eDonkey und eMule im Einsatz. Für dieses Beispiel wurde das Protkoll "pcat" gewählt.
Schwierigkeitsgrad: | Framework-Version(en): .NET Framework 1.0, .NET Framework 1.1, .NET Framework 2.0, .NET Framework 3.0, .NET Framework 3.5, .NET Framework 4 | .NET-Version(en): Visual Basic 2002, Visual Basic 2003, Visual Basic 2005, Visual Basic 2008, Visual Basic 2010 | Download: |
' Dieser Quellcode stammt von http://www.activevb.de ' und kann frei verwendet werden. Für eventuelle Schäden ' wird nicht gehaftet. ' Um Fehler oder Fragen zu klären, nutzen Sie bitte unser Forum. ' Ansonsten viel Spaß und Erfolg mit diesem Source! ' Projektversion: Visual Studio 2002/2003 ' Option Strict: Aus ' Option Explicit: An ' ' Referenzen: ' - System ' - System.Data ' - System.XML ' ' Imports: ' - Microsoft.VisualBasic ' - System ' - System.Collections ' - System.Data ' - System.Diagnostics ' ' ############################################################################## ' ################################ Module1.vb ################################## ' ############################################################################## Module Module1 Sub Main() Dim Key As Microsoft.Win32.RegistryKey Dim P As String = "pcat" System.Console.WriteLine("+--------------------------------------+") System.Console.WriteLine("| Eigenes Protokoll definieren |") System.Console.WriteLine("+--------------------------------------+") System.Console.WriteLine("| Drücken Sie ENTER zum Beenden. |") System.Console.WriteLine("+--------------------------------------+") System.Console.WriteLine() ' Wenn Parameter übergeben werden, so werden diese angezeigt ' Der Parameter "/install" sorgt für eine Installation des Protokolls, ' der Parameter "/uninstall" entfernt die Einträge aus der Registry ' wieder. Select Case Command() Case "/install" ' Protokoll-Klasse installieren Key = Microsoft.Win32.Registry.ClassesRoot.CreateSubKey(P + "\") ' Protokoll-Name installieren Key.SetValue("", "URL: " + P + "-Protokoll") ' Als URL-Protokoll definieren Key.SetValue("URL Protocol", "") ' Schlüssel für Anwendung zum Öffnen festlegen Key = Key.CreateSubKey("shell\open\command") Key.SetValue("", System.Reflection.Assembly. _ GetExecutingAssembly.Location + " %1") ' Icon festlegen Key = Key.CreateSubKey("DefaultIcon") Key.SetValue("", System.Reflection.Assembly. _ GetExecutingAssembly.Location) System.Console.WriteLine("Protokoll " + P + _ ":// wurde installiert.") Case "/uninstall" Key = Microsoft.Win32.Registry.ClassesRoot Key.DeleteSubKeyTree(P + "\") System.Console.WriteLine("Protokoll " + P + _ ":// wurde deinstalliert.") Case Else System.Console.WriteLine("Folgende Parameter wurden übergeben:") System.Console.WriteLine(Command) End Select System.Console.ReadLine() End Sub End Module
Ihre Meinung
Falls Sie Fragen zu diesem Artikel haben oder Ihre Erfahrung mit anderen Nutzern austauschen möchten, dann teilen Sie uns diese bitte in einem der unten vorhandenen Themen oder über einen neuen Beitrag mit. Hierzu können sie einfach einen Beitrag in einem zum Thema passenden Forum anlegen, welcher automatisch mit dieser Seite verknüpft wird.
Archivierte Nutzerkommentare
Klicken Sie diesen Text an, wenn Sie die 4 archivierten Kommentare ansehen möchten.
Diese stammen noch von der Zeit, als es noch keine direkte Forenunterstützung für Fragen und Kommentare zu einzelnen Artikeln gab.
Aus Gründen der Vollständigkeit können Sie sich die ausgeblendeten Kommentare zu diesem Artikel aber gerne weiterhin ansehen.
Kommentar von Fabian00 am 23.01.2009 um 12:10
Er definiert ein Protokoll, welches beim Aufrufen geöffnet wird. Genauso sind http & ftp usw Protokolle in der Registry definiert. Das was du meinst ist doch von fall zu fall unterschiedlich. Für eine Client/Server Verbindung ohne HTTP musst du dir selbst überlegen: ASCII oder Binär, welche Daten müssen übertragen werden. Soll verschlüsselt werden...
MfG,
Fabian
Kommentar von Hollow am 10.04.2007 um 02:40
Hi,
Ich glaub die Überschrift ist etwas falsch gewählt!
Hier wird kein eigenes Protokoll definiert, sondern lediglich bekannt gemacht. Gleiches könnte man auch einfacher durch eine *reg Datei lösen und muss dafür nicht eine Anwendung entwickeln. Wenn es um das hinzufügen bzw. löschen von Registry Schlüsseln geht, würde ich "regedit" empfehlen.
Der Tipp würde wohl eher in die Kategorie "Registry bearbeiten" passen. In dieser Rubrik hätte ich eher ein Benutzerdefiniertes Verbindungsprotokoll zwischen Client - Server erwartet.
Mfg
Kommentar von TTP am 24.08.2005 um 13:30
warum machst du das nicht über WinSock oder wie das bei .NET heißt?
Kommentar von r00kie am 18.11.2004 um 17:05
Super, danke,
nur wie bekomme ich es hin das zwar meine Anwendung verarbeitet wird, zurückgegeben jedoch soll nur ein stream werden, der dann z.B. vom IE verarbeitet wird.
Etwa so:
pcat://undhierdieparas
die Anwedung öffnet nun eine Datenbank, holt Daten und sendet sie dann zurück. z.B. IE