Der Pfad, den Sie eingegeben haben, ist ein relativer Pfad. Windows CE/Mobile unterstützt keine relativen Pfade.
Daraus folgt, dass, da es kein Konzept eines aktuellen Verzeichnisses auf einem Windows Mobile-Gerät gibt, wie würde man eine Ressource finden, für die nur ein relativer Pfad bekannt ist? Ein .Net-Programm hat immer Zugriff auf die Module, aus denen es besteht (normalerweise besteht eine .Net-Komponente aus einem Modul, das in einer DLL- oder EXE-Datei gepackt ist). Die folgende Zeile gibt den absoluten Pfad zur aktuell ausgeführten Assembly zurück.
Zeichenfolge modulePath = this.GetType(). Assembly.GetModules() [0] .FullyQualifiedName;
mit ein wenig mehr Code können Sie das Verzeichnis erhalten, in dem Ihr Programm
Path.GetDirectoryName läuft (this.GetType(). Assembly.GetModules() [0] .FullyQualifiedName)
Verwendung Mit dieser Information können Sie eine korrekte Pfadzeichenfolge für Ihre Ressource erstellen.
Anmerkung: Wenn Sie mit der nativen APIS entwickeln verwenden Sie die folgenden Schritte aus: GetModuleFileName (GetModuleHandle (NULL), pszFullPath, MAX_PATH);
Nicht wahr.CE hat keine relativen Pfade. – ctacke
Gut für zukünftige Referenz zu wissen. Ich werde den Beitrag reparieren, um CE auszuschließen. Danke für die Korrektur. –