1

我想将图像存储到本地文件夹,我从 http 服务器接收到该文件夹​​。

请求 (http://myServer:myPort/?imageID=5) 提供一个“tif-image-file”。如果我将此请求输入 Internet-Explorer,它就可以工作!

我的 C# 代码:

(...)
Uri myUri = new Uri("http://myServer:myPort/?imageID=5");
StorageFile myFile = StorageFile.GetFileFromApplicationUriAsync(myUri);
(...)

但“myFile”始终为空 :(

我做错了什么?

谢谢!

隐形

4

2 回答 2

0

好的,这是我的解决方案:

  1. 我在我的文件夹中创建了一个空文件

     string myFilename = "myfile.tif";
     StorageFile myFile = await myFolder.CreateFileAsync(myFilename, CreationCollisionOption.ReplaceExisting);
    
  2. 背景下载器

     try
     {
         var download = new BackgroundDownloader().CreateDownload(myUri, myFile);
         await download.StartAsync();
     }
     catch (Exception E)
     {
         ...
     }
    

下一个问题是,它只有在我每次将 Release-Mode 从“X64”更改为“AnyCPU”时才有效,反之亦然。如果我不更改发布模式,我的应用程序什么也不做。没有例外,没有程序崩溃......

这是一个错误吗?

(对不起,我的英语不好...)

于 2012-10-30T13:17:20.327 回答
-1

GetFileFromApplicationUriAsync方法旨在用于加载本地应用程序资源。所以它不适合你的情况。您需要使用以下方法创建一个新Storage文件:http: //msdn.microsoft.com/en-us/library/windows/apps/windows.storage.storagefile.createstreamedfileasync.aspxCreateStreamedFileAsnyc

编辑:在你的情况下,它会更容易使用:http CreateStreamedFileFromUriAsync(): //msdn.microsoft.com/en-us/library/windows/apps/windows.storage.storagefile.createstreamedfilefromuriasync.aspx

于 2012-10-25T09:49:01.970 回答