diff --git a/dll/win32/mpr/wnet.c b/dll/win32/mpr/wnet.c index 14192c8245c..2d2d7e10f75 100644 --- a/dll/win32/mpr/wnet.c +++ b/dll/win32/mpr/wnet.c @@ -296,85 +296,6 @@ static void _tryLoadProvider(PCWSTR provider) debugstr_w(provider)); } -#ifdef __REACTOS__ -static void _restoreSavedConnection(HKEY connection, WCHAR * local) -{ - NETRESOURCEW net; - DWORD type, prov, index, size; - - net.lpProvider = NULL; - net.lpRemoteName = NULL; - net.lpLocalName = NULL; - - TRACE("Restoring: %S\n", local); - - size = sizeof(DWORD); - if (RegQueryValueExW(connection, L"ConnectionType", NULL, &type, (BYTE *)&net.dwType, &size) != ERROR_SUCCESS) - return; - - if (type != REG_DWORD || size != sizeof(DWORD)) - return; - - if (RegQueryValueExW(connection, L"ProviderName", NULL, &type, NULL, &size) != ERROR_SUCCESS) - return; - - if (type != REG_SZ) - return; - - net.lpProvider = HeapAlloc(GetProcessHeap(), 0, size); - if (!net.lpProvider) - return; - - if (RegQueryValueExW(connection, L"ProviderName", NULL, NULL, (BYTE *)net.lpProvider, &size) != ERROR_SUCCESS) - goto cleanup; - - size = sizeof(DWORD); - if (RegQueryValueExW(connection, L"ProviderType", NULL, &type, (BYTE *)&prov, &size) != ERROR_SUCCESS) - goto cleanup; - - if (type != REG_DWORD || size != sizeof(DWORD)) - goto cleanup; - - index = _findProviderIndexW(net.lpProvider); - if (index == BAD_PROVIDER_INDEX) - goto cleanup; - - if (providerTable->table[index].dwNetType != prov) - goto cleanup; - - if (RegQueryValueExW(connection, L"RemotePath", NULL, &type, NULL, &size) != ERROR_SUCCESS) - goto cleanup; - - if (type != REG_SZ) - goto cleanup; - - net.lpRemoteName = HeapAlloc(GetProcessHeap(), 0, size); - if (!net.lpRemoteName) - goto cleanup; - - if (RegQueryValueExW(connection, L"RemotePath", NULL, NULL, (BYTE *)net.lpRemoteName, &size) != ERROR_SUCCESS) - goto cleanup; - - size = strlenW(local); - net.lpLocalName = HeapAlloc(GetProcessHeap(), 0, size * sizeof(WCHAR) + 2 * sizeof(WCHAR)); - if (!net.lpLocalName) - goto cleanup; - - strcpyW(net.lpLocalName, local); - net.lpLocalName[size] = ':'; - net.lpLocalName[size + 1] = 0; - - TRACE("Attempting connection\n"); - - WNetAddConnection2W(&net, NULL, NULL, 0); - -cleanup: - HeapFree(GetProcessHeap(), 0, net.lpProvider); - HeapFree(GetProcessHeap(), 0, net.lpRemoteName); - HeapFree(GetProcessHeap(), 0, net.lpLocalName); -} -#endif - void wnetInit(HINSTANCE hInstDll) { static const WCHAR providerOrderKey[] = { 'S','y','s','t','e','m','\\', @@ -453,64 +374,6 @@ void wnetInit(HINSTANCE hInstDll) } RegCloseKey(hKey); } - -#ifdef __REACTOS__ - if (providerTable) - { - HKEY user_profile; - - if (RegOpenCurrentUser(KEY_ALL_ACCESS, &user_profile) == ERROR_SUCCESS) - { - HKEY network; - WCHAR subkey[8] = {'N', 'e', 't', 'w', 'o', 'r', 'k', 0}; - - if (RegOpenKeyExW(user_profile, subkey, 0, KEY_READ, &network) == ERROR_SUCCESS) - { - DWORD size, max; - - TRACE("Enumerating remembered connections\n"); - - if (RegQueryInfoKey(network, NULL, NULL, NULL, &max, &size, NULL, NULL, NULL, NULL, NULL, NULL) == ERROR_SUCCESS) - { - WCHAR *local; - - TRACE("There are %lu connections\n", max); - - local = HeapAlloc(GetProcessHeap(), 0, (size + 1) * sizeof(WCHAR)); - if (local) - { - DWORD index; - - for (index = 0; index < max; ++index) - { - DWORD len = size + 1; - HKEY connection; - - TRACE("Trying connection %lu\n", index); - - if (RegEnumKeyExW(network, index, local, &len, NULL, NULL, NULL, NULL) != ERROR_SUCCESS) - continue; - - TRACE("It is %S\n", local); - - if (RegOpenKeyExW(network, local, 0, KEY_READ, &connection) != ERROR_SUCCESS) - continue; - - _restoreSavedConnection(connection, local); - RegCloseKey(connection); - } - - HeapFree(GetProcessHeap(), 0, local); - } - } - - RegCloseKey(network); - } - - RegCloseKey(user_profile); - } - } -#endif } void wnetFree(void)