Home Windows ecommerce Treiber Server Entwicklung Software Security Internet Hardware Nicht IT Mobile Nintendo Suchen Multimedia Virtualisierung Kopie von Navi01b Provider


Lösungen

.NET Klassen
ApplikationsTyp
c# (.net)
ADO.NET
ASP.NET
ASP
.Net Zusätze
VBA
Tools
WebClientSeitig
Java
PHP
AJAX
SQL
Google
xml
RegEx
Service
MultiLayer
WSH
-->Theorie Gerüst Kontrollstrukturen Variabeln DatenTypen Listen XAML Beispieldateien Lösungen c# Links Setup Kommentare WinForm Glossar Unverarbeitet
Teil1
Teil2
Referenz
Verschlüsseln
Zugriff Excel
EMail
Windows Service
Dialogboxen
Settings

Programmname und Pfad aufgrund Namenserweiterung

Das folgende Codefragment liefert den Pfad und Programmname aufgrund einer Namenserweiterung zurück.

Referenzen:
using System.IO;
using System.Runtime.InteropServices;
using System.Text;

Aufruf:
string myProgramm = GetPathFileExtention("jpg");

Ergebnis in myProgramm: "C:\Programme\LittlePaint\lp.exe"

Code:

[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;
}

Namenserweiterung ändern

Variante 1 mit regulärem Ausdruck

Nötiger Namespace:
System.Text.RegularExpressions

Aufruf:
string vDateiname = ChangeExtension(@"D:/Pics/Gesicht.bmp","jpg")

Ergebnis in vDateiname: "D:/Pics/Gesicht.jpg"

private static string ChangeExtension(string path, string newExtension)
{
    return Regex.Replace(path, @"\.[^.]*$", "." + newExtension);
}

Variante 2 mit .net Klasse

Code folgt demnächst.

 

 


Ihre Werbung hier

 

Haftungsausschluss: Verwendung der Informationen auf Ihre eigene Gefahr. Wir übernehmen keinerlei Haftung. Beachten Sie auch den Haftungsausschluss.


Wenn Sie Wünsche, Anregungen, Verbesserungen, Korrekturen oder sonstige Vorschläge zu dieser FAQ haben: . Wir freuen uns auf Ihr Mail.


 Und jetzt noch ein bisschen Werbung...

Stellensuche, Jobangebote unter www.notizia.ch/stellensuche