Raspberry pi Raspberry Windows 10外部U盘和外部硬盘之间的差异
我用C#编写了一个前台应用程序,它从不同的服务器收集图像并存储在SD卡、U盘或磁盘上 在应用程序清单中,我设置了读/写文件类型和对 可移动驱动器 如果我使用U盘存储数据,或者 如果我使用系统SD卡。但是如果我使用外部硬盘来存储数据,则Raspberry pi Raspberry Windows 10外部U盘和外部硬盘之间的差异,raspberry-pi,windows-10-iot-core,Raspberry Pi,Windows 10 Iot Core,我用C#编写了一个前台应用程序,它从不同的服务器收集图像并存储在SD卡、U盘或磁盘上 在应用程序清单中,我设置了读/写文件类型和对 可移动驱动器 如果我使用U盘存储数据,或者 如果我使用系统SD卡。但是如果我使用外部硬盘来存储数据,则StorageFolder.GetFolderFromPathAsync(DirName)会失败。为什么? 在这两种情况下,路径都是“E:\”。在该路径中,我创建子目录, 创建文件的位置: public async void GetWebImage(Strin
StorageFolder.GetFolderFromPathAsync(DirName)
会失败。为什么?
在这两种情况下,路径都是“E:\”。在该路径中,我创建子目录,
创建文件的位置:
public async void GetWebImage(String urlStr, String filename)
{
try
{
try
{
String DirName = Path.GetDirectoryName(filename);
String FileName = Path.GetFileName(filename);
// Folder Struktur erzeugen
var rootFolder = await StorageFolder.GetFolderFromPathAsync(DirName);
var http_file = await rootFolder.CreateFileAsync(FileName, CreationCollisionOption.ReplaceExisting);
HttpWebRequest httpWebRequest = HttpWebRequest.CreateHttp(urlStr);
HttpWebResponse response = (HttpWebResponse)await httpWebRequest.GetResponseAsync();
Stream resStream = response.GetResponseStream();
using (var stream = await http_file.OpenAsync(FileAccessMode.ReadWrite))
{
await resStream.CopyToAsync(stream.AsStreamForWrite());
}
response.Dispose();
}
catch (Exception ex)//any exceptions happend while saving the picture
{
String s = ex.ToString();
}
}
catch (Exception ex)
{
String s = ex.ToString();
}
}
我通过以下方式获得外部驱动器的路径和存储:
// Get Path to first external Drive, otherwise "ExternalStorageFolder==null"
public StorageFolder ExternalStorageFolder;
private async void GetFirstExternalStoragePath()
{
try
{
StorageFolder externalDevices;
IReadOnlyList<StorageFolder> externalDrives;
externalDevices = Windows.Storage.KnownFolders.RemovableDevices;
externalDrives = await externalDevices.GetFoldersAsync();
ExternalStorageFolder = externalDrives[0];
TxtStatus.Text = "External Drive:"+ ExternalStorageFolder.Path + " found.";
}
catch (Exception ex)
{
String s = "No external Drive found\n" + ex.ToString();
TxtStatus.Text = s;
ExternalStorageFolder = null;
}
}
//获取第一个外部驱动器的路径,否则“ExternalStorageFolder==null”
公共存储文件夹外部存储文件夹;
私有异步void GetFirstExternalStoragePath()
{
尝试
{
存储文件夹外部设备;
IReadOnlyList外部驱动器;
externalDevices=Windows.Storage.KnownFolders.RemovableDevices;
externalDrives=等待externalDevices.GetFoldersAsync();
ExternalStorageFolder=externalDrives[0];
TxtStatus.Text=“外部驱动器:”+ExternalStorageFolder.Path+“已找到。”;
}
捕获(例外情况除外)
{
字符串s=“未找到外部驱动器\n”+例如ToString();
TxtStatus.Text=s;
ExternalStorageFolder=null;
}
}
如果我直接通过“ExternalStorageFolder”访问,我不会得到“拒绝访问”
但是如果我使用“GetFolderFromPathAsync(DirName)”,这会失败…为什么?您是否尝试根据添加一些功能?抱歉,我不知道您的意思是什么?问题是StorageFolder.GetFolderFromPathAsync()失败。。我的意思是,您可以在访问通用命名约定(UNC)文件夹()时尝试添加一些网络功能。