再在main()里面添加
HWND hwnd=GetConsoleWindow()
SendMessage(hwnd,WM_SETICON,ICON_SMALL,( LPARAM )LoadIcon(GetModuleHandle(NULL),MAKEINTRESOURCE(资源ID)))
就可以了, 对程序图标和运行后的窗口图标都有效
常用:-i 给应用程序添加图标
-F 指定打包后只生成一个exe格式的文件
-D –onedir 创建一个目录,包含exe文件,但会依赖很多文件(默认选项)
-c –console, –nowindowed 使用控制台,无界面(默认)
-w –windowed, –noconsole 使用窗口,无控制台
-p 添加搜索路径
——————————————————————————————————————————————————————————————
例:
【命令】【参数1,参数2,参数3】【ico图标路径】【py文件路径】
pyinstaller -F -w -i C:\Users\vsc\Desktop\user\DD.ico music.py
注:需要cd到py文件跟目录运行
先将一个做好的ico图标文件放到工程所在目录下面,在“解决方案资源管理器”中的“资源文件”中点击右键,选择添加——资源,在添加资源对话框中选择“icon”,点击导入,选择刚刚放的ico文件,一个图标资源就导入到解决方案里了。但是光这样还不够,还需要添加相应的代码才能实现。首先在main函数所在cpp文件前面添加#pragma comment (lib,"User32.lib"),这是因为我们需要使用的两个Windows API函数需要链接到这个库文件,然后在main函数的最前面添加如下代码:
HWND hWnd = GetConsoleWindow() //获取当前控制台窗口的句柄
SendMessage(hWnd, WM_SETICON, ICON_SMALL, (LPARAM)LoadIcon(NULL, _T("IDI_ICON1"))) //设置图标
其中IDI_ICON1是图标资源的ID。
这样编译一下,控制台程序就有图标了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)