USBPhysic C# example (source code sample)
Posted on : 09-02-2010 | By : rlByte Team | In : USBPhysic, rlByte News
2
In order to get the usb storage device (external portable Hard Drives, flash/pen/key drive etc) serial number and other manufacturer information (NOT volume serial, only the unique one, the one that will not change after a format, physical one) using our USBPhysic library and C# (CSharp) you need to do the following 3 easy steps:
(1) Load USBPhysic library and declare the imported library functions :
{
public partial class Form1 : Form
{
//load the library
[DllImport("USBPhysic")]
public static extern int Init(string sUser, string sRegCode);
[DllImport("USBPhysic")]
public static extern int GetUSBPhysicInfo(int diskIndex, int InfoType, StringBuilder pHddInfo);
public Form1()
{
InitializeComponent();
}
(2) Call the Init function to initialize the user computer usb storage devices
{
int USBDisks = Init("your reg code here", "your reg code here");
if (USBDisks > 0)
{
for (int i = 0; i < USBDisks; i++)
{
comboBox1.Items.Add(i);
}
comboBox1.SelectedIndex = 0;
}
}
(3) Now that you have the total hard drives count you can query for the manufacturer information passing the usb device index to the GetPhysicInfo function:
{
const int nChars = 1024;
StringBuilder Buff = new StringBuilder(nChars);
//0 = Get SerialNumber
if (GetUSBPhysicInfo(Int32.Parse(comboBox1.Items[comboBox1.SelectedIndex].ToString()), 0, Buff) > 0)
textBox1.Text = Buff.ToString();
else
textBox1.Text = "n/a";
//1 = Get product name
if (GetUSBPhysicInfo(Int32.Parse(comboBox1.Items[comboBox1.SelectedIndex].ToString()), 1, Buff) > 0)
textBox2.Text = Buff.ToString();
else
textBox2.Text = "n/a";
//2 = Get USB Manufacturer
if (GetUSBPhysicInfo(Int32.Parse(comboBox1.Items[comboBox1.SelectedIndex].ToString()), 2, Buff) > 0)
textBox3.Text = Buff.ToString();
else
textBox3.Text = "n/a";
//3 = Get drive letter mapped on Windows
if (GetUSBPhysicInfo(Int32.Parse(comboBox1.Items[comboBox1.SelectedIndex].ToString()), 3, Buff) > 0)
textBox4.Text = Buff.ToString();
else
textBox4.Text = "n/a";
}

A complete project with source code example for using USBPhysic component to get usb device (hard disk, storage device pen etc) physical information with CSharp (C#) is available in the resources area of the product (here).
Tags: c# sharp sample, dll, extract hd serial number, physical hard drive info, serial, source, USBPhysic




















Hello,my dear friend,
I have tested “USBPhysic. DLL”, in the initialization process ,a registration form will appear , I do not need a form.please help me.could you give me a new DLL.send it to my E_mail.
E-mail:hsmgod@126.com
THANKS.
He Shumeng
Hello,
You need to purchase a license for USBPhysic in order to remove the registration form. Get it from here: Buy USBPhysic license
After you buy a license you will receive instructions on how to use the full library, without any restrictions or pop-up forms.
Good luck.
John Becher