赞
踩
可以看到详细内容
按照上文的方法,即写两个EXE程序。一个发布的程序,一个是安装程序,安装程序用于解压发布的程序的压缩包。
以下是QT源码:
- #ifndef ENV
- #define ENV
-
- #include <QDir>
- #include <QString>
- #include <QStringList>
- #include <QDebug>
-
- #include <windows.h>
- #include "psapi.h"
- #include "stdio.h"
- #include <tlhelp32.h>
- #include <QStandardPaths>
-
- #include <QByteArray>
- #include <QFile>
- #include <QCryptographicHash>
-
- namespace ENV{
-
- //define
-
- //创建文件夹
- static inline void createFolder(const QString &folderPath);
- //查找当前是否有该进程运行
- static inline bool findProcess(const QString &proName);
- //创建桌面快捷方式
- static inline bool createShortCutToDeskTop(const QString &file);
- //创建开始菜单快捷方式
- static inline bool createShortCutToStartMenue(const QString &file);
- //得到文件md5
- static inline QByteArray getFileMd5(QFile &file);
- static inline QByteArray getFileMd5(const QString &filePath);
- //对比文件md5
- static inline bool cmpFileMd5(QFile &lhs,QFile &rhs);
- static inline bool cmpFileMd5(const QString &lhs,const QString &rhs);
-
-
-
- //implementation
- void createFolder(const QString &folderPath){
- QDir dir;
- bool exist = dir.exists(folderPath);
- if(!exist){
- QStringList list = folderPath.split('/');
- QString filePath = "";
- int len = 0;
- if(QString(list.at(list.length()-1)).contains('.'))
- len = list.length()-1;
- else
- len = list.length();
- for(int i = 0;i < len;++i){
- filePath = filePath + list[i] + '/';
- exist = dir.exists(filePath);
- if(!exist)
- dir.mkdir(filePath);
- }
- }
- }
-
- static inline bool findProcess(const QString &proName)
- {
- int count = 0;
- PROCESSENTRY32 pe32;
- pe32.dwSize = sizeof(pe32);
- HANDLE hProcessSnap = ::Cr
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。