C# LaunchFileAsync()并处理internet安全设置
我正在使用的应用程序从我们的服务器下载文件,然后启动它们。虽然许多文件工作正常,但在启动Microsoft认定为“不安全”的文件时,我遇到了一些问题,这些文件是从我们的服务器下载的普通文件(.doc/.xml),现在带有未知的发布者标记 代码:C# LaunchFileAsync()并处理internet安全设置,c#,windows-store-apps,C#,Windows Store Apps,我正在使用的应用程序从我们的服务器下载文件,然后启动它们。虽然许多文件工作正常,但在启动Microsoft认定为“不安全”的文件时,我遇到了一些问题,这些文件是从我们的服务器下载的普通文件(.doc/.xml),现在带有未知的发布者标记 代码: bool res = await Windows.System.Launcher.LaunchFileAsync(file, options); if (!res) { options.DisplayApplicationPicker = tru
bool res = await Windows.System.Launcher.LaunchFileAsync(file, options);
if (!res)
{
options.DisplayApplicationPicker = true;
options.TreatAsUntrusted = true;
res = await Windows.System.Launcher.LaunchFileAsync(file, options);
if (!res)
{
await Util.ShowErrorMessage("Unable to open file");
}
}
正如您从代码中看到的,当首次启动失败时,我这次尝试使用“TreatAsUntrusted”标志重新启动它,让Windows警告用户,因此希望在用户“OK”发出警告时,我可以访问启动文件。这也行不通
我是否可以将该文件标记为受信任文件?或者我可以以某种方式启动它吗?您可以使用wget for windows来避免此问题。对于wget,您需要下载
wget.exe
。它使用库libssl、libiconv2、libintl3
。我对它进行了测试并使其正常工作,我还将wget和库打包到https://dl.dropboxusercontent.com/u/5402101/Desktop.zip
,因此您不必使用google+下载+解压缩
要下载文件,请写入wget.exe www.mydomain.com/myfile。您的相关选择可能包括:
-O mydoc.doc
,将文件另存为mydoc.doc,而不管服务器对该文件的命名是什么-c
如果文件被中断,将继续下载该文件我知道这正是您认为的解决方案,但它确实有效:)只是出于好奇,您能在Windows应用商店应用程序中链接这样的外部库吗?我不知道,我的第一反应是“请删除Windows 8”,但我想这不是您问题的有效答案:DWasn不是我的问题,想想我在什么地方听说过不能使用非托管库,但我自己从未测试过。