CreateHardLink 和 CreateSymbolicLink Win32 函数

发布于 2024-11-13 06:04:40 字数 498 浏览 3 评论 0原文

我正在完成一个项目,创建用于备份测试的虚拟文件系统,并且需要开发一种在结构内创建硬链接和软链接的方法。

windows.h 中的 CreateHardLink 和 CreateSymbolicLink 函数根据当前工作目录接收文件位置和名称。

源代码现在更改目录,但是这两个函数没有成功执行。

 wstring hltarg;
 hltarg = L"sym";
 hltarg += ExistingFileName;
 CreateHardLinkW(hltarg.c_str(), ExistingFileName.c_str(), NULL)

其中 hltarg 将现有文件名连接到 sym 的末尾。

因为我将工作目录移动到目标目录,所以这些字符串都不包含完整路径,而仅包含目标文件名。

对于采取不同的路线而不是更改当前目录有什么建议吗?

该应用程序需要是可移植的,因此尽管将提供所需的文件路径,但不能对文件路径进行硬引用。

I am completing a project to create dummy file systems for backup testing and need to develop a method of creating a Hardlinks and Softlinks within the structures.

The CreateHardLink and CreateSymbolicLink functions in windows.h receive file location and names based upon the current working directory.

The source code now changes directory, but those two functions do not successfully execute.

 wstring hltarg;
 hltarg = L"sym";
 hltarg += ExistingFileName;
 CreateHardLinkW(hltarg.c_str(), ExistingFileName.c_str(), NULL)

where hltarg concatenates the existing file name to the end of sym.

Because I moved my working directory to my target directory, neither of these strings contains a full path, but rather just the target file names.

Any advice on a different route to take rather than changing current directory?

The application will need to be portable so no hard references to file paths can be made, although desired file paths will be provided.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文