客户端:访问Windows Azure驱动器?

时间:2012-05-06 20:34:27

标签: azure azure-storage

我正在开发一个Azure应用程序,其中一部分涉及用户浏览在线文件系统。为此,我尝试使用Windows Azure驱动器,但我无法弄清楚如何从客户端访问它,或如何在服务器端访问它。

目前,我只知道如何制作驱动器:

CloudStorageAccount devStorage = CloudStorageAccount.DevelopmentStorageAccount;
CloudBlobClient client = devStorage.CreateCloudBlobClient();
CloudBlobContainer container = new CloudBlobContainer("teacher", client);
CloudDrive.InitializeCache(localCache.RootPath, 
        localCache.MaximumSizeInMegabytes);
CloudDrive drive = new CloudDrive(container.GetPageBlobReference("drive1").Uri, devStorage.Credentials);
drive.Create(50);

我使用C#作为我的开发语言。

非常感谢所有帮助!

4 个答案:

答案 0 :(得分:3)

使用Windows Azure云端硬盘需要了解以下几点:

  1. 云驱动器是实际的页面Blob,它存储在Windows Azure Blob存储中并作为驱动器安装(您将获得一个驱动器号取决于您的计算机驱动器统计信息),在您可以提供Windows Azure运行时的计算机中环境。

  2. 程序化如您在示例中所示,在您的代码中安装云驱动器非常容易,但有一件事是错过了确保具有此代码可以运行的Windows Azure RunTime环境。

  3. 我编写了一个实用程序,用于在位于此处的Windows Azure VM(Web,工作者或VM角色)中安装azure驱动器: http://mountvhdazurevm.codeplex.com/

    您可以直接在Windows Azure VM中运行上述工具,也可以在Compute Emulator(Windows Azure开发结构)中使用完全相同的代码,因此只要您可以提供Windows Azure Runtime环境,就可以安装底线Page blob VHD驱动器。

    我见过几个案例,有人要我在本地计算机(客户端和服务器,任何地方)安装Windows Azure Page Blob作为驱动器,实际的障碍是将Windows Azure Run时间放在本地环境中,因为它不可用。在某些情况下,一些人继续尝试使用Windows Azure SDK来制作Windows Azure运行时  在他们的桌面上可用,创建了一个虚拟Web角色,然后挂载安装在本地计算机上的VHD,并且还提供了驱动器号。我不确定这种解决方案,因为这不是Windows Azure计算机模拟器的设计。 希望这个描述为您提供一些指导。

答案 1 :(得分:1)

我不确定我是否理解你的问题,但听起来你想要多个客户端应用程序 - 可能是在不在Azure上的机器上 - 来访问你的Azure驱动器?

不幸的是,Azure驱动器只能从Azure Web / worker或VM角色实例访问。

答案 2 :(得分:1)

我已经编写了一个在Azure网站上运行的WebDAV服务器,它允许客户端(包括Windows资源管理器和Office)连接到Azure存储。它使用Table和Blob Storage的组合来存储文件结构和文件。我已经使用Windows资源管理器和Word 2013对其进行了测试。虽然这不是云驱动器解决方案,但它仍然使用Azure存储作为后端,并且可以从WebDAV客户端访问它。你可能会发现它很有用..

https://github.com/ichivers/AzureDAV

答案 3 :(得分:0)

现有答案还有一点。您始终可以下载支持云端硬盘的Blob并将其安装在本地系统上。 blob真的只是一个VHD。但是,除非驱动器很小,否则下载时间并不简单。

埃里克