?
wie finde ich die ip-adresse eines gemounteten netzwerklaufwerks?
gibt es eine plattformübergreifende lösung?
ich hab unter windows was versucht
DWORD dwRetVal;
WCHAR Buffer[1024];
DWORD dwBufferLength = 1024;
UNIVERSAL_NAME_INFO * unameinfo;
REMOTE_NAME_INFO *remotenameinfo;
unameinfo = (UNIVERSAL_NAME_INFO *) &Buffer;
dwRetVal = WNetGetUniversalName(LPCWSTR("Y:\\myfolder\\Dokumentation.zip"), UNIVERSAL_NAME_INFO_LEVEL, (LPVOID) unameinfo, &dwBufferLength );
if (dwRetVal == NO_ERROR)
{
std::string s;
bool res = false;
char* p = 0;
int bsz;
bsz=WideCharToMultiByte(CP_ACP,0,unameinfo->lpUniversalName,-1,0,0,0,0);
if (bsz > 0)
{
p = new char[bsz];
int rc= WideCharToMultiByte(CP_ACP,0,unameinfo->lpUniversalName,-1,p,bsz,0,0);
if (rc != 0)
{
p[bsz-1] = 0;
s = p;
res = true;
}
}
//jetzt ist der abs. netzwerklaufwerkpfad in s gespeichert
}
das klappt aber nicht, da die funktion "WNetGetUniversalName" einen fehler rausspuckt. ich hab keine ahnung, wie ich einen std::string in LPCWSTR umwandle und umgekehrt. hat jemand eine idee oder einen andern ansatz? (unter linux wäre das auch interessant)