Win10无法映射网络盘,求帮助!

Win10无法映射网络盘,求帮助!,第1张

可以先拿到explorer的token,再用Impersonate切换当前线程的用户,这样就相当于用explorer的视角观察所有映射出来的盘。

BOOL ChangeUser()

{

DWORD pid = GetPIDByName(L"explorer.exe")

if (pid == -1) return FALSE

HANDLE hProc = OpenProcess(PROCESS_ALL_ACCESS, 0, pid)

if (hProc == INVALID_HANDLE_VALUE) return FALSE

HANDLE hToken

if (!OpenProcessToken(hProc, TOKEN_ALL_ACCESS, &hToken))

return FALSE

return ImpersonateLoggedOnUser(hToken)

}

BOOL CheckAccess(const char* name)

{

DWORD attr = GetFileAttributesA(name)

if (attr == -1)

{

printf("No access to file: %s\n", name)

return FALSE

}

else

{

printf("File attribute %x\n", attr)

return TRUE

}

}

int main(int argc, char** argv)

{

if (argc <2) return 0

if (CheckAccess(argv[1]))

return 0

if (!ChangeUser())

{

printf("Failed to change user\n")

return 0

}

printf("Changed to normal user.\n")

CheckAccess(argv[1])

return 0

}

&ltimg src="https://pic3.zhimg.com/50/49bfdb3482e45274fe56c6acdca631d7_hd.jpg" data-rawheight="178" data-rawwidth="434" class="origin_image zh-lightbox-thumb" width="434" data-original="https://pic3.zhimg.com/49bfdb3482e45274fe56c6acdca631d7_r.jpg"&gt

这里略去了GetPIDByName实现。

映射网络驱动盘:拒绝访问是设置错误造成的,解决方法为:

1、点击开始菜单,找到"计算机",并点击。

2、找到并点击“映射网络驱动器”。

3、会d出一个网络驱动器的设置窗口。

4、驱动器符号的选择。点击驱动器,可以选择系统所剩下的盘符,这里选择“Z”盘。

5、择需要映射的共享文件夹。我们可以直接在下图红色标注框中直接输入共享文件夹的地址,也可以点击右边的”浏览“查看局域网中其它计算机的共享文件夹。

6、点击“完成”,系统会为我们映射网络驱动器。然后打开我的计算机,会看到如下蓝色标注图所示。双击网络驱动器,就可以直接访问到我们想要访问的网络共享资源了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/9816062.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存