Перевести 16-ричный ответ WMI в символьную строку - VB
Формулировка задачи:
Здравствуйте!
Столкнулся с проблемой получения серийного номера жесткого диска (не разделов) - тот, что на наклейке.
WMI-запрос выдает ответ в таком виде:
А нужно в таком:
1) Вопрос 1. Чисто математический: возможно ли перевести?
(но не утверждаю, что первое число вообще содержит указанную строку)
2) Возможно, нужно что-нибудь изменить в запросе?
Данную проблему решил для Windows 7 путем запуска скрипта с повышенными правами. Для XP проблема остается.
Прилагаю 2 скрина (запуск "с правами" и без.)
Сам скрипт VBScript/Visual Basic 6 (сформирован через Scriptomatic с правками):
2020202020202020202020203157304641444b57
W1F0DAWK
На всякий случай - перевод на CMD лежит здесь: Полезные BAT/CMD скрипты
Данная тема обсуждается также на форуме oszone.
P.S. У некоторых пользователей проблема не наблюдается.
Просьба отписать также в этой теме, если у Вас Bat-файл или скрипт дает правильный ответ без повышения прав.
Решение задачи: «Перевести 16-ричный ответ WMI в символьную строку»
textual
Листинг программы
Sub bb() Dim s$, d$, i& s = "2020202020202020202020203157304641444b57" For i = 1 To Len(s) Step 4 d = d & Chr$("&h" & Mid$(s, i + 2, 2)) & Chr$("&h" & Mid$(s, i, 2)) Next Debug.Print Trim(d) End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д