gpt4 book ai didi

windows - 如何以编程方式在 Windows 中挂载原始 iSCSI 卷并准备好使用?

转载 作者:可可西里 更新时间:2023-11-01 10:02:08 27 4
gpt4 key购买 nike

在我们的 SAN 上创建新卷的 API 非常简单。我一直无法弄清楚的是如何以编程方式将 iSCSI 启动器连接到它,初始化空间(在 Windows 磁盘管理器意义上)并最终格式化它并将它挂载为一个驱动器号。

我目前使用的是 win2k3,但是如果可以简化实现,则可以选择迁移到 win2k8。

最佳答案

我必须为我公司的一款产品实现磁盘初始化、分区和格式化。我无法分享代码,但我可以为您指明正确的方向。

您想要的 API 称为 VDS - Virtual Disk Service .它是一个 COM API,但我已经在 C++(使用 ATL)和 C#(COM 互操作)中成功地使用了它。

遗憾的是文档非常缺乏;您只需要沉浸在对象模型中,编写一些代码,然后您就会逐渐熟悉它。

Windows Server 2008 附带了一个未记录但非常有用的 VDS 的 C# 包装器。查找名为 Microsoft.Storage.Vds.dll 的 DLL。您可以使用 Reflector 来发现它的各种类和方法。我在阅读 this blog post 时发现了这一点,其中作者试图使用上述 DLL 从 PowerShell 初始化磁盘。

VDS 包含可由 SAN 供应商实现以配置 LUN 和执行其他 SAN 操作的 API;建议您避免使用这些并专注于基本软件提供商,它将在 MBR 或 GPT 磁盘上创建基本(而不是动态)分区。请注意,我提到的 Microsoft wrapper 对 GPT 的支持有点少;我必须对其进行一些修改才能使 GPT 磁盘正常工作。

VDS 是一个复杂而挑剔的 API,但如果您只是想初始化磁盘、创建分区、格式化并将其挂载到驱动器盘符,那么您需要的大部分内容都在那里,而且相当容易做到.祝你好运。

关于windows - 如何以编程方式在 Windows 中挂载原始 iSCSI 卷并准备好使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1053763/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com