Python извлекает значок высокого разрешения из EXE-файла ⇐ Python

Программы на Python
Anonymous
Python извлекает значок высокого разрешения из EXE-файла

Сообщение Anonymous »

Я пытаюсь извлечь файлы .ico из исполняемых файлов
Я нашел этот код на сайте

Код: Выделить всё

import win32ui
import win32gui
import win32con
import win32api

ico_x = win32api.GetSystemMetrics(win32con.SM_CXICON)
ico_y = win32api.GetSystemMetrics(win32con.SM_CYICON)

large, small = win32gui.ExtractIconEx(r"C:\z\NEW ICON\a.exe",0)
win32gui.DestroyIcon(small[0])

hdc = win32ui.CreateDCFromHandle( win32gui.GetDC(0) )
hbmp = win32ui.CreateBitmap()
hbmp.CreateCompatibleBitmap( hdc, ico_x, ico_x )
hdc = hdc.CreateCompatibleDC()

hdc.SelectObject( hbmp )
hdc.DrawIcon( (0,0), large[0] )

hbmp.SaveBitmapFile( hdc, 'icon.bmp')

это работает, но всегда дает значок размером 32x32
и я знаю, что exe-файл содержит значки с более высоким разрешением, так как я открыл его с помощью 7zip

Подробнее здесь: https://stackoverflow.com/questions/790 ... n-exe-file

Вернуться в «Python»