ExpandEnvironmentStrings Nicht Die Erweiterung Meiner Variablen

Habe ich einen Prozess im Rahmen des Run-Schlüssels in der registry. Es wird versucht, den Zugriff auf eine Umgebungsvariable, die ich definiert habe, in einer früheren Sitzung. Ich bin mit ExpandEnvironmentStrings erweitern Sie die variable in einem Pfad. Die Umgebungsvariable ist ein Benutzer-Profil variabel. Wenn ich meinen Prozess auf der Kommandozeile ist es nicht zu erweitern als auch. Wenn ich rufe 'set' ich kann sehen, dass die variable.

Code...

CString strPath = "\\\\server\\%share%"
TCHAR cOutputPath[32000]; 
DWORD result = ExpandEnvironmentStrings((LPSTR)&strPath, (LPSTR)&cOutputPath,  _tcslen(strPath) + 1);
 if ( !result )
 {
  int lastError = GetLastError();
  pLog->Log(_T( "Failed to expand environment strings. GetLastError=%d"),1, lastError);
 }

Wenn die debugging-Ausgabe-Pfad ist genau der gleiche wie Weg. Kein Fehlercode zurückgegeben.

Was ist goin auf?

  • Ich denke, dass strPath == Path und cOutputPath == OutputPath, aber ein bisschen Bereinigung helfen würde.
  • Poste bitte gültigen code. Definieren Sie die variable strPath und cOutputPath und dann Variablen verwenden Path und OutputPath.
Schreibe einen Kommentar