2016-08-10 5 views
0

Ich benutze C++ mit Borland C++ Builder zu durchsuchen, und ich bin in der Lage zu einem lokalen oder Remote-Ordnern mit dem folgenden Code durchsuchen:Verwenden ShellExecute zu einem \ Standort

AnsiString sDir = "C:\\Temp"; 
    ShellExecute(Application->Handle,"OPEN", "EXPLORER.EXE", sDir.c_str(), NULL, 1); 

Aber wenn ich versuche, einen Zugriff auf Ordner auf einem Remote-Computer, der mit zwei umgekehrten Schrägstrichen beginnt, wie "\\ mypath", funktioniert der obige Code nicht mehr. Gibt es eine Möglichkeit, Windows Explorer zu überzeugen, "\\ mypath" zu öffnen?

+0

Was funktioniert * nicht mehr * bedeutet genau? –

+0

AnsiString sDir = "C: \\ Temp \\"; ??? –

+0

Der Speicherort "C: \\ Temp" ist in Ordnung, ich kann es in Windows Explorer öffnen. Wenn ich versuche, "\\\\ Pfad" zu öffnen, wartet das Programm eine lange Zeit, dann öffnet es einen anderen Ort, "Bibliotheken". Ich habe versucht Pfad mit zwei Backslashes vor und auch vier Backslashes und beide funktionieren nicht. –

Antwort

0

Ich habe versucht, den Code erneut I zur Verfügung gestellt und in der Tat funktioniert es:

AnsiString sDir = "\\\\computername\\myfolder"; 
ShellExecute(Application->Handle,"OPEN", "EXPLORER.EXE", sDir.c_str(), NULL, 1); 

Ich bin nicht sicher, warum es nicht für mich arbeiten, bevor (zu einem bestimmten Zeitpunkt wahrscheinlich ich in den beiden Schrägstriche zu verwenden, vergessen Pfad vor myfolder, obwohl ich auch versucht habe, nur auf Computername zuzugreifen). Tut mir leid, dass ich deine Zeit verschwende.

Nick

+0

Dann ist es am besten, wenn Sie Ihre Frage löschen, bevor sie in die Warteschleife gestellt wird (geschlossen). –

+0

Ich denke, die Frage ist immer noch nützlich, weil jemand lernen könnte, vier Backslashes und zwei Backslashes zu verwenden (außerdem empfiehlt StackOverflow, keine Frage mit Antworten zu löschen). –

Verwandte Themen