Gpt/Fdd/Mbr硬盘格式判断小插件
本帖最后由 xuxianzhao 于 2022-5-28 22:52 编辑作用:
Gpt/Fdd/Mbr硬盘格式判断
使用方法:
JudgeGpt.exe+硬盘序号
bug反馈交流群:863599045
这个看不懂啊? chg008 发表于 2022-5-29 00:15
这个看不懂啊?
就是判断硬盘格式的一个小插件有些人能用的到单独的话可能没什么用 本帖最后由 2012jiashanni 于 2022-5-29 00:47 编辑
点赞 Func _GetDrivePartitionStyle($sDrive)
Local $tDriveLayout = DllStructCreate('dword PartitionStyle;' & _
'dword PartitionCount;' & _
'byte union;' & _
'byte PartitionEntry')
Local $hDrive = DllCall("kernel32.dll", "handle", "CreateFileW", _
"wstr", "\\.\" & $sDrive, _
"dword", 0, _
"dword", 0, _
"ptr", 0, _
"dword", 3, _ ; OPEN_EXISTING
"dword", 0, _
"ptr", 0)
If @error Or $hDrive = Ptr(-1) Then Return SetError(@error, @extended, 0) ; INVALID_HANDLE_VALUE
DllCall("kernel32.dll", "int", "DeviceIoControl", _
"hwnd", $hDrive, _
"dword", 0x00070050, _
"ptr", 0, _
"dword", 0, _
"ptr", DllStructGetPtr($tDriveLayout), _
"dword", DllStructGetSize($tDriveLayout), _
"dword*", 0, _
"ptr", 0)
DllCall("kernel32.dll", "bool", "CloseHandle", "handle", $hDrive)
Switch DllStructGetData($tDriveLayout, "PartitionStyle")
Case 0
Return "MBR"
Case 1
Return "GPT"
Case 2
Return "RAW"
Case Else
Return "UNKNOWN"
EndSwitch 想请问下参数支持盘符吗?比如JudgeGpt.exe C:
我试了下好像可以。 PECMD代码即可
_SUB 分区类型
PART -devid list disk %1,&&iDskInf
MSTR &&Mbr=<10>%&iDskInf%
MESS %&Mbr%
_END
分区类型 0 0就是第一个硬盘,1是第二个硬盘 还是你们的方法好呀 liuzhaoyzz 发表于 2022-5-29 07:37
想请问下参数支持盘符吗?比如JudgeGpt.exe C:
我试了下好像可以。
最好使用硬盘序号吧这个也不难获取我再改进一下也行 chg008 发表于 2022-5-29 00:15
这个看不懂啊?
写批处理时就可以根据此插件的输出内容判断启动方式 都是高手啊,膜拜{:1_191:} 还不错 谢谢分享{:1_186:} good
页:
[1]