main.cpp 1.0 KB

1234567891011121314151617181920212223242526272829303132333435
  1. #include "mainwindow.h"
  2. #include "core/CoreService.h"
  3. #include <QApplication>
  4. #include "utils/logging.h"
  5. int main(int argc, char *argv[])
  6. {
  7. QApplication app(argc, argv);
  8. app.setStyle("Fusion");
  9. app.setWindowIcon(QIcon(":/qrc/icons/ads_icon.svg"));
  10. // 设置关闭最后一个窗口时不退出应用,让总线核心继续运行
  11. app.setQuitOnLastWindowClosed(false);
  12. // 初始化核心服务(在界面创建之前)
  13. CoreService* coreService = CoreService::instance();
  14. if (!coreService->initialize()) {
  15. LOG_CRITICAL() << "Failed to initialize CoreService";
  16. return -1;
  17. }
  18. // 创建并显示主窗口
  19. MainWindow w;
  20. w.show();
  21. // 运行应用
  22. int result = app.exec();
  23. // 注意:应用退出时才关闭核心服务
  24. // 如果只是关闭窗口,应用不会退出,核心服务会继续运行
  25. LOG_DEBUG() << "Application exiting, shutting down core service...";
  26. coreService->shutdown();
  27. return result;
  28. }