def hex2bin(s):
hex_table = ['0000', '0001', '0010', '0011',
'0100', '0101', '0110', '0111',
'1000', '1001', '1010', '1011',
'1100', '1101', '1110', '1111']
bits = ''
for i in range(len(s)):
bits += hex_table[int(s[i], base=16)]
return bits
Вы захотите изменить манифест, который встраивается в программу. Это работает в Visual Studio 2008 и выше: Project + Добавить новый элемент, выберите «Файл манифеста приложения». Измените элемент
на:
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
Пользователь получает приглашение UAC при запуске программы. Используйте с умом; их терпение может быстро истощиться.
Вы можете встроить файл манифеста в EXE-файл, чтобы Windows (7 или выше) всегда запускала программу от имени администратора.
Более подробную информацию можно найти в Шаг 6: Создание и внедрение манифеста приложения (UAC) (MSDN).
Добавление элемента requestedExecutionLevel
в ваш манифест - это только половина дела; Вы должны помнить, что UAC можно отключить. Если это так, вы должны выполнить проверку по старинке и вывести диалоговое окно с сообщением об ошибке, если пользователь не является администратором
(вызовите IsInRole (WindowsBuiltInRole.Administrator)
в CurrentPrincipal вашего потока
).