使用 C++ 在远程 Windows PC 上创建文件夹?
如何使用 C++ 在远程 Windows PC 上创建文件夹?
How can I create folders on a remote Windows PC using C++?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
如何使用 C++ 在远程 Windows PC 上创建文件夹?
How can I create folders on a remote Windows PC using C++?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(2)
直接地,你不能——远程机器上必须有一个服务来为你公开该功能。
如果您正在谈论服务器消息块场景(即“Windows文件共享”),您可以只需使用网络路径调用
CreateDirectory
即可,即“\\\\computername\\share\\newFolder”
,但这需要远程计算机已经设置了现有的网络共享(我不相信您可以在没有A的情况下远程创建所述共享) . 目标机器上的管理员权限,以及 B. 减少一些安全设置以允许远程创建共享)。编辑:(响应标签编辑添加MFC标签)
至于
CreateDirectory
在 MFC 中如何公开,我不确定该函数是否有 MFC 包装器——尽管实际上不需要包装器,因为函数本身就是独立的——将它放在一个类中没有任何好处。Directly, you can't -- there would have to be a service on the remote machine which exposes that functionality for you.
If you're talking about a server message block scenario (i.e. "Windows Filesharing"), you can just call
CreateDirectory
with a network path, i.e."\\\\computername\\share\\newFolder"
, but this requires the remote machine already be setup with an existing network share (I don't believe you can create said share remotely without A. admin rights on the target box, and B. some lessening of security settings to allow creation of shares remotely).EDIT: (In response to the tag edit adding the MFC tag)
As far as how
CreateDirectory
is exposed in MFC, I'm not sure if there's an MFC wrapper around that function at all -- though there really doesn't need to be a wrapper because the function itself is self contained -- there'd be no benefit of putting it in a class.典型的方法是首先调用
NetShareAdd
创建远程计算机上路径的共享。为了支持在那里创建内容,您通常需要至少为共享指定ACCESS_CREATE
。完成此操作后,您将拥有远程磁盘的本地路径,并且可以在其中创建目录,就像使用本地磁盘一样。
The typical way is to start by calling
NetShareAdd
to create a share to a path on the remote machine. To support creating things there, you'll normally want to specify at leastACCESS_CREATE
for the share.Once you've done that, you'll have a local path to the remote disk, and you can create a directory in it, just like you would with a local disk.