___ tag123vbnet ___ Visual Basic.NET (VB.NET) ist eine verwaltete, typsichere, objektorientierte Computerprogrammiersprache mit mehreren Paradigmen. Zusammen mit C # und F # ist es eine der Hauptsprachen für .NET Framework. VB.NET kann als eine Weiterentwicklung von Microsoft Visual Basic 6 (VB6) betrachtet werden, ist aber auf dem Microsoft .NET Framework implementiert. Verwenden Sie dieses Tag NICHT für VB6-, VBA- oder VBScript-Fragen. ___ tag123registry ___ Die Windows-Registrierung ist eine Datenbank, in der Konfigurationseinstellungen für Hardware, Software und das Windows-Betriebssystem selbst gespeichert werden. ___ answer47763682 ___

VB.Net %code% für %code% . Siehe MSDN AssocQueryString-Funktion

%Vor%

Und seine Aufzählungen: siehe MSDN ASSOCF-Aufzählung , ASSOCSTR-Enumeration

%Vor%

Dies ist eine mögliche Implementierung:

%Vor%

Um das Ergebnis zu erhalten, rufen Sie einfach die Hilfsfunktion auf und fragen, welche Art von Informationen oder Assoziation ( %code% ) Sie wollen.

%Vor%

Also, zum Beispiel nennst du es so:

%Vor%

Für mich ist das Ergebnis:

  

C: \ Programme \ Microsoft Office \ Office16 \ WINWORD.EXE

Nicht alle Erweiterungen haben eine ausführbare Verknüpfung. Einige Dateierweiterungen können einem System-Applet / Tool zugeordnet werden, das von %code% gestartet wird.
In diesem Fall kann die Verwendung von %code% als Parameter möglicherweise kein brauchbares Ergebnis liefern.
Wenn beispielsweise keine Bildbearbeitungssoftware installiert ist, kann die Abfrage der ausführbaren Datei für die Erweiterungen %code% oder %code% zurückgegeben werden:

  

C: \ Programme (x86) \ Windows Photo Viewer \ PhotoViewer.dll

Verwenden Sie in diesem Fall %code% als Parameter, um die zugehörige Befehlszeile abzurufen, die dann an %code% übergeben werden kann. Im selben Fall wäre das Ergebnis:

  

C: \ Windows \ System32 \ rundll32.exe "C: \ Programme (x86) \ Windows Photo   Viewer \ PhotoViewer.dll ", ImageView_Fullscreen% 1

Dabei steht %code% für den Namen der zu öffnenden Datei.

    
___ tag123execute ___ In vielen Dialekten von SQL wird die Anweisung execute verwendet, um eine gespeicherte Prozedur aufzurufen. ___ tag123systemdiagnostics ___ System.Diagnostics ist ein Namespace des .NET-Frameworks. Es stellt Klassen bereit, mit denen Sie mit Systemprozessen, Ereignisprotokollen und Leistungsindikatoren interagieren können. ___ tag123file ___ Ein Block beliebiger Informationen oder Ressourcen zum Speichern von Informationen, auf die der stringbasierte Name oder Pfad zugreifen kann. Dateien stehen Computerprogrammen zur Verfügung und basieren normalerweise auf einer Art persistentem Speicher. ___ qstntxt ___

Wir wissen bereits, wie System.Diagnostics.Process.Start ("C: \ filename.png") funktioniert, aber was passiert, wenn der Dateiname nicht mit einer Erweiterung endet? Wie kann ich den Dateinamen ohne Erweiterung im Dateinamen mit dem Standardprogramm ausführen, das mit der PNG-Erweiterung verknüpft ist? Etwas wie: openFile ("C: \ Dateiname", "PNG")

    
___

8

Wir wissen bereits, wie System.Diagnostics.Process.Start ("C: \ filename.png") funktioniert, aber was passiert, wenn der Dateiname nicht mit einer Erweiterung endet? Wie kann ich den Dateinamen ohne Erweiterung im Dateinamen mit dem Standardprogramm ausführen, das mit der PNG-Erweiterung verknüpft ist? Etwas wie: openFile ("C: \ Dateiname", "PNG")

    
Amin Vanda 11.12.2017, 21:49
quelle

1 Antwort

32

VB.Net DllImport für AssocQueryString() . Siehe MSDN AssocQueryString-Funktion

%Vor%

Und seine Aufzählungen: siehe MSDN ASSOCF-Aufzählung , ASSOCSTR-Enumeration

%Vor%

Dies ist eine mögliche Implementierung:

%Vor%

Um das Ergebnis zu erhalten, rufen Sie einfach die Hilfsfunktion auf und fragen, welche Art von Informationen oder Assoziation ( AssocStr ) Sie wollen.

%Vor%

Also, zum Beispiel nennst du es so:

%Vor%

Für mich ist das Ergebnis:

  

C: \ Programme \ Microsoft Office \ Office16 \ WINWORD.EXE

Nicht alle Erweiterungen haben eine ausführbare Verknüpfung. Einige Dateierweiterungen können einem System-Applet / Tool zugeordnet werden, das von Rundll32.exe gestartet wird.
In diesem Fall kann die Verwendung von AssocStr.Executable als Parameter möglicherweise kein brauchbares Ergebnis liefern.
Wenn beispielsweise keine Bildbearbeitungssoftware installiert ist, kann die Abfrage der ausführbaren Datei für die Erweiterungen .jpg oder .png zurückgegeben werden:

  

C: \ Programme (x86) \ Windows Photo Viewer \ PhotoViewer.dll

Verwenden Sie in diesem Fall AssocStr.Command als Parameter, um die zugehörige Befehlszeile abzurufen, die dann an System.Diagnostics.Process.Start() übergeben werden kann. Im selben Fall wäre das Ergebnis:

  

C: \ Windows \ System32 \ rundll32.exe "C: \ Programme (x86) \ Windows Photo   Viewer \ PhotoViewer.dll ", ImageView_Fullscreen% 1

Dabei steht %1 für den Namen der zu öffnenden Datei.

    
Jimi 12.12.2017, 00:39
quelle