Feedback

C# - Programmpfad mittels Erweiterung ermitteln

Veröffentlicht von am 18.08.2008
(1 Bewertungen)
Anhand der Erweiterung wav, mp3, etc. kann dazu der verknüpfte Programmpfad ausgelesen werden. Die Erweiterung kann "wav" und ".wav" verarbeiten.

Beispiel:
//Gibt C:\Programme\Windows Media Player\wmplayer.exe zurück
GetPathFileExtention("mp3")

Nicht vergessen, folgende Referenzen zu setzen:
using System.IO;
using System.Runtime.InteropServices;
using System.Text;
GFU-Schulungen  [Anzeige]

VB.NET 2017/2015/2013 Einführung

Das Seminar befähigt Sie zur eigenständigen Entwicklung von anwenderorientierten Programmen in VB.NET, worin auch der Einsatz von Datenbanken enthalten ist.

C# Aufbaukurs

Sie haben grundlegende .NET- und C#-Kenntnisse und und wollen diese nun erweitern. Der Aufbaukurs C# führt Sie ein die Arbeit mit Interfaces und Delegates, Generics und Parallel Computing.

[DllImport("kernel32.dll")]
static extern uint GetTempPath(uint nBufferLength, [Out] StringBuilder lpBuffer);

[DllImport("shell32.dll", EntryPoint = "FindExecutable")]
static extern long FindExecutableA(string lpFile, string lpDirectory, [Out] StringBuilder lpResult);

/// <summary>
/// Gibt den Pfad des Programmes zurück mit der die Extension "verbunden" ist.
/// </summary>
/// <param name="extension">Dateierweiterung (pdf, mp3, ...)</param>        
public static string GetPathFileExtention(string extension)
{
    string tempFileName = Path.ChangeExtension(Path.GetTempFileName(), extension);
    string tempPathFile = Path.Combine("temp", tempFileName);
    StringBuilder sb = new StringBuilder(1024);
    File.Create(tempFileName);
    long ret = FindExecutableA(tempFileName, string.Empty, sb);
    if (ret >= 32) return sb.ToString();
    else return string.Empty;
}

Kommentare zum Snippet

 

Logge dich ein, um hier zu kommentieren!