我有安装了Windows Server 2008 R2的服务器,以及处理我们所有业务事务的第三方应用程序。 问题是,我们的空间不足,数据的根文件夹被硬编码到应用程序中。
联系应用程序供应商已经无济于事。 他们的build议是删除旧文件,或运行第二个实例移动旧文件,这违反了我们的合规政策。
我也尝试了各种types的重新分析点(连接,符号链接等)来安装额外的存储,他们在应用程序之外很好的工作。 但是,当尝试在挂载的path中创build或删除文件时,应用程序出现“访问被拒绝”错误。
微软应用程序兼容性工具套件中的“CorrectFilePaths”垫片似乎就是答案,但在Windows Server 2008 R2上运行时,此垫片不会出现在可用垫片的列表中。
有没有办法让它工作? 还是有谁熟悉另一个可靠的工具,可以做到这一点?
TL; DR我有一个破坏的第三方应用程序,这是硬编码保存文件到一个特定的目录。 需要更多的空间,但它不会与ntfs路口/链接。 有什么工具可用?
好吧,经过大量的研究和试验和错误,我发现了一个解决scheme。 绝对不是最佳实践,但符合我们的需要。
我必须在Windows 7机器上创build垫片。 垫片是使用Win7兼容模式创build的,并使用以下行作为CorrectFilePaths垫片的参数:
-b "%appdata%\AppName;%userprofile%\AppData\Roaming\AppName"
-b参数告诉shim跳过任何默认的path修正。 关于这个的详细信息可以在这个technet文章中find。 另外值得注意的是,我们有文件夹redirect来将AppData文件夹转发到UNCpath。 这也适用于NTFS挂载点,只需使用完整的path,即\\?\Volume{GUID}\来代替参数%userprofile%...后半部分%userprofile%...
https://technet.microsoft.com/en-us/library/cc766201(v=ws.10).aspx
我很乐意回答任何人的问题。