C# WNetUseConnection连接到同一域上的远程服务器/UNC,但不连接到其他/远程域
只要远程UNC位于同一网络上,我就可以连接到它,但当我尝试跨域访问服务器时,例如从网络A到网络B,它没有连接,并且我收到消息“未找到网络路径”。如何在不同/不受信任的网络上连接远程UNCC# WNetUseConnection连接到同一域上的远程服务器/UNC,但不连接到其他/远程域,c#,C#,只要远程UNC位于同一网络上,我就可以连接到它,但当我尝试跨域访问服务器时,例如从网络A到网络B,它没有连接,并且我收到消息“未找到网络路径”。如何在不同/不受信任的网络上连接远程UNC [DllImport("Mpr.dll")] private static extern int WNetUseConnection( IntPtr hwndOwner, NETRESOURCE lpNetResource, string lpPassword, string l
[DllImport("Mpr.dll")]
private static extern int WNetUseConnection(
IntPtr hwndOwner,
NETRESOURCE lpNetResource,
string lpPassword,
string lpUserID,
int dwFlags,
string lpAccessName,
string lpBufferSize,
string lpResult
);
[DllImport("Mpr.dll")]
private static extern int WNetCancelConnection2(
string lpName,
int dwFlags,
bool fForce
);
[StructLayout(LayoutKind.Sequential)]
private class NETRESOURCE
{
public int dwScope = 0;
public int dwType = 0;
public int dwDisplayType = 0;
public int dwUsage = 0;
public string lpLocalName = null;//changed from "" to null
public string lpRemoteName = "";
public string lpComment = "";
public string lpProvider = null;//changed from "" to null
}
public static string connectToRemote(string remoteUNC, string username, string password)
{
return connectToRemote(remoteUNC, username, password, false);
}
public static string connectToRemote(string remoteUNC, string username, string password, bool promptUser)
{
NETRESOURCE nr = new NETRESOURCE();
nr.dwType = RESOURCETYPE_DISK;
nr.lpRemoteName =remoteUNC;
int ret;
if (promptUser)
ret = WNetUseConnection(IntPtr.Zero, nr, "", "", CONNECT_INTERACTIVE | CONNECT_PROMPT, null, null, null);
else
ret = WNetUseConnection(IntPtr.Zero, nr, password, username, 0, null, null, null);
if (ret == NO_ERROR) return null;
return getErrorForNumber(ret);
}
public static string disconnectRemote(string remoteUNC)
{
int ret = WNetCancelConnection2(remoteUNC, CONNECT_UPDATE_PROFILE, false);
if (ret == NO_ERROR) return null;
return getErrorForNumber(ret);
}
如果使用桌面发布,这将通过网络访问 FTP可能更适合这种情况。如果从Windows资源管理器手动尝试,这是否有效?我找到了答案,谢谢帮助。@MS Stp您找到解决此问题的方法了吗?我遇到了相同的错误“未找到网络路径”@MStp我知道它的老问题。你是怎么解决的?你能解释一下桌面出版吗?