首页 > 解决方案 > Windows 7 复制问题

问题描述

从共享启动后,我的程序将复制到 %temp% 下的本地计算机。这完全符合我在 Windows 10 中的要求,但是这也是在使用 Windows 7 计算机的环境中。

最初我只是使用 File.Copy作为将文件复制到 %temp% 的方式,经过一些测试后,我发现第二种方法可以创建文件,但我无法创建我的 *.exe,文件已从我完成后立即进入系统。

我将位置称为 %temp% 但我的意思是它的等价物

我如何将位置设置为临时文件位置 Path.GetTempPath() Windows 10

File.Copy(src, dest)

Windows 7的

FileInfo srcInfo = new FileInfo(src);
FileStream srcStream = srcInfo.OpenRead();
FileStream destStream = File.Create(dest);
srcStream.CopyTo(destStream);
destStream.Close();
srcStream.Close();

我还尝试了读取、创建和写入文件的替代格式,例如使用 FileStream 声明它

我一直在研究完成相同任务的其他方法,但是我找不到适合我的方法,而且我找到的所有答案都非常过时。

我正在使用 Visual Studio 2017 Enterprise 编译应用程序并在 .NET 4.5 中编写它

我的应用程序已经过测试,在没有复制和复制到其他位置的情况下运行,它工作正常。它只是针对用户个人资料。我已经测试过以管理员身份和普通用户身份通过​​组策略运行它。

一个合适的答案是详细说明不受 Windows 7 UAC 影响的更合适的文件位置或我所描述的问题的解决方案。

标签: c#windows-7

解决方案


您可以测试一些替代方案:

var bSource = File.ReadAllBytes(src);
File.WriteAllBytes(dest, bSource);

但这听起来更像是一个 AV 问题。


推荐阅读