您的位置:首页 > 财经 > 产业 > 专业的网站服务公司_有没有在线网页制作工具_推广信息发布平台_网络营销广告案例

专业的网站服务公司_有没有在线网页制作工具_推广信息发布平台_网络营销广告案例

2025/4/2 13:16:20 来源:https://blog.csdn.net/weixin_61769998/article/details/146533309  浏览:    关键词:专业的网站服务公司_有没有在线网页制作工具_推广信息发布平台_网络营销广告案例
专业的网站服务公司_有没有在线网页制作工具_推广信息发布平台_网络营销广告案例

server.py

import os
import sys
from flask import Flask, send_from_directory# 获取静态文件路径
if getattr(sys, "frozen", False):# 如果是打包后的可执行文件base_dir = sys._MEIPASS
else:# 如果是开发环境base_dir = os.path.dirname(os.path.abspath(__file__))app = Flask(__name__, static_folder=os.path.join(base_dir, "vue_dist"), static_url_path="/")# 提供静态文件服务
# @app.route("/")
# def index():
#     return app.send_static_file("index.html")@app.route("/", defaults={"path": ""})
@app.route("/<path:path>")
def catch_all(path):return app.send_static_file("index.html")if __name__ == "__main__":app.run(port=5000)

main.py

import os
import sys
import ctypes
import webview
import threading
from server import app  # 引入 Flask 应用# 获取静态资源路径
def get_resource_path(relative_path):if getattr(sys, "frozen", False):# 如果是打包后的可执行文件base_path = sys._MEIPASSelse:# 如果是开发环境base_path = os.path.dirname(os.path.abspath(__file__))return os.path.join(base_path, relative_path)# 设置窗口图标(Windows 平台)
def set_window_icon(window, icon_path):try:# 加载图标文件icon_handle = ctypes.windll.user32.LoadImageW(0, icon_path, 1, 0, 0, 0x00000010)if not icon_handle:raise Exception("Failed to load icon")# 获取窗口句柄hwnd = webview.windows[0]._window_handlectypes.windll.user32.SendMessageW(hwnd, 0x0080, 0, icon_handle)  # WM_SETICONexcept Exception as e:print(f"Error setting window icon: {e}")# 启动 Flask 服务器
def run_server():app.run(port=5000)if __name__ == "__main__":# 启动 Flask 服务器(在后台线程中运行)server_thread = threading.Thread(target=run_server)server_thread.daemon = Trueserver_thread.start()# 使用 PyWebView 创建桌面窗口icon_path = get_resource_path("vue_dist/favicon.ico")window = webview.create_window("易聪云科技",  # 窗口标题url="http://localhost:5000",  # 加载 Flask 提供的页面width=1024,  # 窗口宽度height=768,  # 窗口高度resizable=True,  # 允许调整窗口大小# fullscreen=True,)# 启动 PyWebViewwebview.start()# 设置窗口图标set_window_icon(window, icon_path)

vue_dist 是vue项目打包后的dist目录,放在跟main.py同级目录下

打包命令:pyinstaller --onefile --windowed main.py --add-data “vue_dist;vue_dist”

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com