Frage

Wir haben eine Anwendung, die den Weg wissen muss, dass es von ausgeführt wird (das ist immer ein Netzwerkpfad).

setzen wir einen Teil unserer Konfiguration auf der Grundlage auf dem Weg, dass die Anwendung von gestartet wird, und wir wollen wirklich, dass Konfigurationspfade zugeordneten Netzlaufwerk auf die Ressource anstelle des UNC-Pfad verwenden.

Was wir gefunden haben, ist, dass, wenn wir ohne UAC unsere Anwendung starten, wir in der Lage sind, das Verzeichnis zu erhalten, die die Anwendung verwenden, gestartet

GetModuleFileName(NULL, buf, sizeof(buf));

Aber wenn wir erhöhten starten (was wir eigentlich tun müssen), der Puffer zurück gibt uns eine Basis UNC-Pfad statt eines Laufwerksbuchstaben auf Basis Pfad.

Beachten Sie, dass wir immer aus dem Windows Explorer starten, indem Sie in der Ordnerstruktur des abgebildeten Laufwerksbuchstaben zu navigieren.

Hat jemand irgendwelche Vorschläge, wie die Laufwerksbuchstabe erhalten basierend Pfad der EXE von einem Prozess, der erhöhten laufen?

War es hilfreich?
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top