vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Zippen wie die Profis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Datei-Programm-Assoziation 
Autor: RonnyImBalkon
Datum: 13.11.07 23:14

Diese Class gibt mir zur Dateiendung einen Kontektmenüeintrag, aber das zugeordnette Programm startet nicht. wo liegt der Fehler leider sind die Keys so dermassen zerstreut das ich das nicht raffe.

Imports System
Imports Microsoft.Win32
 
 
Public Class DateiEndung
 
    Sub New()
        Dim Verb As String = "Open"
        Dim IDString As String = "txtxtxtx"
        SetFileType(".txtx", IDString)
        SetFileDescription(IDString, "DateiTypeBeschreibung")
        AddAction(IDString, Verb, "öffne Datei")
        SetExtensionCommandLine(Verb, IDString, Chr(34) & _
          "%SystemRoot%\system32\notepad.exe" & Chr(34) & " " & Chr(34) & "%1" _
          & Chr(34), "Name")
        SetDefaultAction(IDString, Verb)
        SetDefaultIcon(IDString, "%SystemRoot%\system32\notepad.exe,1")
    End Sub
    Public Sub SetFileType(ByVal extension As String, ByVal FileType As String)
        Dim rk As RegistryKey = Registry.ClassesRoot
        Dim ext As RegistryKey = rk.CreateSubKey(extension)
        ext.SetValue("", FileType)
    End Sub
    Public Sub SetFileDescription(ByVal FileType As String, ByVal Description _
      As String)
        Dim rk As RegistryKey = Registry.ClassesRoot
        Dim ext As RegistryKey = rk.CreateSubKey(FileType)
        ext.SetValue("", Description)
    End Sub
    Public Sub AddAction(ByVal FileType As String, ByVal Verb As String, ByVal _
      ActionDescription As String)
        Dim rk As RegistryKey = Registry.ClassesRoot
        Dim ext As RegistryKey = rk.OpenSubKey(FileType, True).CreateSubKey( _
          "Shell").CreateSubKey(Verb)
        ext.SetValue("", ActionDescription)
    End Sub
    Public Sub SetExtensionCommandLine(ByVal Command As String, ByVal FileType _
      As String, ByVal CommandLine As String, Optional ByVal Name As String = _
      "")
        Dim rk As RegistryKey = Registry.ClassesRoot
        Dim ext As RegistryKey = rk.OpenSubKey(FileType).OpenSubKey( _
          "Shell").OpenSubKey(Command, True).CreateSubKey("Command")
        ext.SetValue(Name, CommandLine)
    End Sub
    Public Sub SetDefaultAction(ByVal FileType As String, ByVal Verb As String)
        Dim rk As RegistryKey = Registry.ClassesRoot
        Dim ext As RegistryKey = rk.OpenSubKey(FileType).OpenSubKey("Shell", _
          True)
        ext.SetValue("", Verb)
    End Sub
    Public Sub SetDefaultIcon(ByVal FileType As String, ByVal Icon As String)
        Dim rk As RegistryKey = Registry.ClassesRoot
        Dim ext As RegistryKey = rk.OpenSubKey(FileType, True)
        ext.SetValue("DefaultIcon", Icon)
    End Sub
End Class
gefunden bei http://vbcity.com/forums/topic.asp?tid=72502 ,dort hab ich aber kein login, deshalb hier die Frage.

MFG ....


Wenn es das Forum nicht g?b, ich glaub ich h?tte meine Fragen in gro?en Buchstaben in den Sand geschrieben.

Hoffentlich kommt ein Schiff und Jemand kennt eine passende Antwort darauf...

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Datei-Programm-Assoziation1.396RonnyImBalkon13.11.07 23:14

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel