0

我已经在 dev 中运行云驱动器快照一段时间了,没有任何问题。我现在正试图让它在 Azure 中工作。

我这辈子都无法让它发挥作用。这是我最新的错误:

Microsoft.WindowsAzure.Storage.CloudDriveException: Unknown Error HRESULT=D000000D --->

Microsoft.Window.CloudDrive.Interop.InteropCloudDriveException: Exception of type 'Microsoft.WindowsAzure.CloudDrive.Interop.InteropCloudDriveException' was thrown.

   at ThrowIfFailed(UInt32 hr)

   at Microsoft.WindowsAzure.CloudDrive.Interop.InteropCloudDrive.Mount(String url, SignatureCallBack sign, String mount, Int32 cacheSize, UInt32 flags)

   at Microsoft.WindowsAzure.StorageClient.CloudDrive.Mount(Int32 cacheSize, DriveMountOptions options)

知道是什么原因造成的吗?我在 Azure 中同时运行 WorkerRole 和 Storage,因此它与开发模拟环境断开无关。

这是我挂载快照的代码:

        CloudDrive.InitializeCache(localPath.TrimEnd('\\'), size);

        var container = _blobStorage.GetContainerReference(containerName);
        var blob = container.GetPageBlobReference(driveName);

        CloudDrive cloudDrive = _cloudStorageAccount.CreateCloudDrive(blob.Uri.AbsoluteUri);
        string snapshotUri;
        try
        {
            snapshotUri = cloudDrive.Snapshot().AbsoluteUri;

            Log.Info("CloudDrive Snapshot = '{0}'", snapshotUri);
        }
        catch (Exception ex)
        {
            throw new InvalidCloudDriveException(string.Format(
                    "An exception has been thrown trying to create the CloudDrive '{0}'. This may be because it doesn't exist.",
                    cloudDrive.Uri.AbsoluteUri), ex);
        }

        cloudDrive = _cloudStorageAccount.CreateCloudDrive(snapshotUri);

        Log.Info("CloudDrive created: {0}", snapshotUri, cloudDrive);

        string driveLetter = cloudDrive.Mount(size, DriveMountOptions.None);

最后的 .Mount() 方法现在失败了。

请帮忙,因为这让我很难过!

提前致谢。

戴夫

4

3 回答 3

2

昨晚我终于让这个工作了。我所做的只是创建一个新容器并将我的 VHD 上传到它,所以我不确定旧容器是否发生了一些奇怪的事情......?想不出什么。旧容器一定已经有点长了..!?!

我生命中的两天,我永远不会回来。调试实时 Azure 问题是一个极其乏味的过程。

遗憾的是,Azure CloudDrive 开发模拟没有更接近地复制实时环境。

于 2010-07-07T02:02:11.033 回答
1

D000000D InteropCloudDriveException 的一个来源是当正在安装的驱动器(或快照)是可扩展的而不是固定大小时。不幸的是,MSDN 文档提供的限制信息很少,但此说明是一个极好的信息来源:

http://convective.wordpress.com/2010/02/27/azure-drive/

于 2012-01-13T10:06:31.463 回答
0

我可以确认 Dave 关于 BLOB 容器的发现(爱你,Dave,我只花了一个晚上)。

在更改 BLOB 容器之前,我也遇到了调试问题。

我收到的错误消息是“将调试器附加到 url 的 IIS 工作进程时出错......”。

希望这可以帮助一些糟糕的 Azure 开发人员,他们在调试器方面遇到了挑战。

于 2011-01-17T23:48:35.827 回答