c# - 如何查找 LTFS 卷序列号而不是磁带驱动器序列号

标签 c# console-application wmi

我的机器上安装了一个 LTFS 磁带,我想以编程方式查找它的卷序列号。我通过右键单击-->属性-->LTFSDetails 发现“A00024”就是那个数字。我写了一个动态查找的代码

class Program
    {
        static void Main(string[] args)
        {
            System.Management.ManagementObjectSearcher ms = new System.Management.ManagementObjectSearcher("SELECT * FROM Win32_PhysicalMedia");
            foreach (ManagementObject mo in ms.Get())
            {
                Console.WriteLine("serial.No    " + mo["SerialNumber"]);
                Console.WriteLine("Name         " + mo["Name"]);
                Console.WriteLine("Manufacterur " + mo["Manufacturer"]);
                Console.WriteLine("model        " + mo["Model"]);                
                Console.WriteLine("other info   " + mo["OtherIdentifyingInfo"]);
                Console.WriteLine("media type   " + mo["MediaType"]);
                Console.WriteLine("-----------");
            }            
            Console.ReadKey();
        }
    }

但这里返回的序列号是磁带驱动器序列号,我认为这可能是制造商提供给硬件的序列号。知道如何找到 LTFS 卷序列号吗

最佳答案

我正在做一个名为“RapidCopy”的OS X的文件复制软件和LTFS相关工具。

LTFS 的卷序列信息无法轻松访问。 您询问的信息存在于 LTFS 的内部元数据中。 请查看以下 pdf 的第 29 页。 http://www.snia.org/sites/default/files/LTFS_Format_2.2.0_Technical_Position.pdf

ANSI VOL1 的 header 结构已经公布,但访问数据部分需要访问 SCSI。 我正在阅读 IBM LTFS 的一些实现,但这不太容易。

关于c# - 如何查找 LTFS 卷序列号而不是磁带驱动器序列号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20194475/

相关文章:

file - 如何将 2 个视频文件和音频文件与 FFMPEG 结合起来?

c# - 在 .NET 中设置打印机的 "KeepPrintedDocuments"属性

c# - WMI 提供程序程序集中的 RunInstaller 属性

c# - SqlDependency 不适用于现有数据库

c# - DataGridView 和 ComboBox 问题

c# - 非泛型方法 'IServiceProvider.GetService(Type)' 不能与类型参数一起使用

vb.net - Delphi:拦截 SWbemServices.ExecQuery 错误

C# AntiForgeryToken 属性在 mvc 应用程序中导致 StackOverflowException

c# - 使用 Moq 模拟 NHibernate ISession

objective-c - 为控制台应用程序设置非常基本的单元测试时出现 "Undefined symbols for architecture x86_64"