gpt4 book ai didi

c# - 编辑 : Where and how should download temp files?

转载 作者:行者123 更新时间:2023-11-30 16:35:42 25 4
gpt4 key购买 nike

假设我想从网络上运行一个 exe,很明显我宁愿将它下载到一个临时文件夹.. 从那里运行它,然后删除它(或让操作系统这样做)。是否有任何约定如何做到这一点,同时确保不会轰炸权限问题,覆盖现有文件等?

谢谢。

编辑 我是从桌面应用程序中删除的。顺便说一句,我确实有很多猜测,但我只是想知道什么被接受了。

我知道我可以使用 Path.GetTempFile,但是它已经为我制作了文件,这让我想到它也可以将它添加到某个数据库,并对其进行跟踪 - 所以我不能删除它并用我自己的文件替换它。

我知道我也可以使用 Path.TempDirectory(或类似的东西)和 Path.RandomFileName,但后者会为文件名添加一个随机扩展名,而我需要 exe,显然这也可以很容易地解决,但重写 MS 已经尝试为我们编写的内容对我来说似乎很奇怪。

最佳答案

我需要编写一个 self 更新的 Windows 服务,发现自己处于类似的境地,我需要在执行之前将最新的安装程序下载到一个临时位置。关于该领域最佳实践的信息不多,因此我依赖 ASP.NET/C# 提供的“工具”。

我使用 Path.GetTempPath() 和下载的文件名构建了下载文件的完整路径。下面是一些示例代码:

string url = "http://www.domain.com/install.exe";
string path = Path.GetTempPath();
string fileName = Path.GetFileName(url);
string tmpFile = Path.Combine(path, fileName);

底线是我认为您猜测使用 System.IO.Path Temp* 函数是一种合理的方法——即使我找不到任何文档来支持它。

关于c# - 编辑 : Where and how should download temp files?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1590326/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com