自己編寫安裝製作程式 (轉)
自己編寫製作
鄧振波
這是我以前寫的實現安裝程式的一個類,包含了一些的安裝程式所用的,當然,由於工作和時間的關係,沒有完全的寫完整,有不少地方還需要改進,現在把這個類提供給大家,讓有興趣的同道進行更深入的研究。
本類實現的功能包括檢查版本,操作登錄檔,目錄、操作, 建立快捷方式,外部程式,重新啟動,註冊OCX、DLL等等基本的安裝函式。
因為整個源程式比較長,所以這裡只列出該類的標頭檔案,原始檔從 //setupfn.zip">這裡 ,連線程式的時候,你要新增version.lib連線。
class CSetup
{
public:
int GetVersion(CString& strVersion,& gage,WORD& wCodePage);//得到Windows的版本,返回值為版本,引數返回具體的語言資訊
BOOL RegistrActiveServer(LPCSTR lpszOcxFileName,BOOL bRegister=TRUE);//註冊OCX、DLL
BOOL IsServer(); //系統是否Serve版
BOOL CheckWindowVersion(BOOL& bNT,DWORD& dwMajor,DWORD& dwMinor);//檢測Windows的版本資訊
BOOL IsNT();//系統是否
BOOL Is();//系統是否Win200
BOOL IsWinNT4();//系統是否NT4
BOOL IsWinNT351();//
BOOL IsWindows98();//系統是否98及以上
BOOL IsWindows95();//系統是否95及其它
UINT GetTempFileName(CString& strUniquName,LPCSTR lpPrefixString=NULL);//得到唯一的臨時檔名
DWORD GetSysTempPath(CString& strTempPath);//得到系統臨時目錄
LONG RegWriteData(LPCTSTR pszSection, LPCTSTR pszEntry, const BYTE* btVal, DWORD dwLength,HKEY hKey=HKEY_LOCAL_MACHINE);//往登錄檔寫資料
LONG RegWriteLong(LPCTSTR pszSection, LPCTSTR pszEntry, DWORD dwVal, HKEY hKey=HKEY_LOCAL_MACHINE);//往登錄檔寫整數
LONG RegWriteString(LPCTSTR pszSection, LPCTSTR pszEntry, LPCSTR pszVal, HKEY hKey=HKEY_LOCAL_MACHINE);//往登錄檔寫字串
LONG RegReadData(LPCTSTR pszSection, LPCTSTR pszEntry, BYTE* btVal,DWORD dwLength, HKEY hKey=HKEY_LOCAL_MACHINE);//從登錄檔讀資料
BOOL DeleteKey(LPCTSTR pszSubKey,LPCTSTR pszValueName,HKEY hKey=HKEY_LOCAL_MACHINE);//刪除登錄檔的鍵值,pszValueName不為空則整個Key下面的所有鍵值均刪
LONG RegReadLong(LPCTSTR pszSection, LPCTSTR pszEntry, DWORD &dwVal, HKEY hKey=HKEY_LOCAL_MACHINE);//從登錄檔裡讀取整數
LONG RegReadString(LPCTSTR pszSection,LPCTSTR pszEntry, CString& sVal,HKEY hKey=HKEY_LOCAL_MACHINE);//從登錄檔裡讀取字串
DWORD GetMemorySize(CString& strDecriSzie);//得到大小
BOOL GetFreeSpace(char chDriver,CString& strDescript);//得到剩餘空間
BOOL ShutDownComputer(UINT uFlag=EWX_REBOOT);//重起或關閉計算機
BOOL CreateProcess(LPSTR lpszFileName);//執行一個程式
BOOL ExecuteEx(LPCSTR lpileName,LPCSTR lpszParam=NULL,LPCSTR lpszMode="OPEN");//執行某些檔案或程式
BOOL CreateShortCutOnDesktop(LPCSTR lpszFullPathName,LPCSTR lpszLinkName);//桌面建立快捷方式
BOOL CreateShortCutOnProgramGroup(LPCSTR lpszFullPathName,LPCSTR lpszLinkName);//開始選單建立快捷方式
BOOL CreateShortCut(const CString strSrcPath,const CString strPathLink);//建立快捷方式
BOOL AddToStartup(LPCSTR lpszFullFilePath,BOOL bRunOnce=FALSE);//新增隨計算機啟動而啟動程式
BOOL DeleteFolder(LPCSTR lpzsFolderName,DWORD dwDelFlags=0);//刪除資料夾
BOOL CreatePath(LPCSTR lpszFullPathName);//建立目錄
BOOL GetStartupPath(CString &strPath);//得到啟動目錄
BOOL GetDesktopPath(CString& strPath);//得到桌面路徑
BOOL GetProgramGroupPath(CString& strPath);//得到程式組路徑
BOOL GetWindowsPath(CString& strWinPath,CString& strWinSysPath);//得到Windows目錄
BOOL DeleteFile(LPCSTR lpszFileName);//刪除檔案
BOOL CopyFile(LPCSTR lpszSrc,LPCSTR lpszDec,DWORD dwFlag=FOF_ALLOWUNDO|FOF_SILENT);//複製檔案
BOOL SetupCheckIEVersion(int& MajorVersion,int& MinorVersion);//檢測IE的版本
int StartupAt(LPCTSTR lpszName,LPCTSTR lpszExeFile,HKEY nRootKey=NULL);////程式啟動而啟動
virtual ~CSetup();
private:
CRegKey m_regKey; //登錄檔操作
DWORD m_dwVersion; //用於判斷版本
BOOL m_bNT;
public:
DWORD m_dwWinVerMajor;//系統版本
DWORD m_dwWinVenor;//系統版本
};
更多文章在
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-990647/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 用Delphi編寫安裝程式(1) (轉)
- InstallShield Express for delphi製作安裝程式定製BDE引擎 (轉)Express
- 教你如何製作程式安裝包
- InstallShield X製作安裝程式
- InstallShield製作ASP安裝程式(6)
- InstallShield製作ASP安裝程式(5)
- InstallShield製作ASP安裝程式(4)
- InstallShield製作ASP安裝程式(3)
- InstallShield製作ASP安裝程式(2)
- InstallShield製作ASP安裝程式(1)
- 製作asp.net的安裝程式ASP.NET
- 系統安裝引導盤的製作(轉)
- Windows CE/Pocket PC安裝盤的製作 (轉)Windows
- 自己用VC來做自己的專業安裝程式 (轉)
- java 應用程式 安裝程式製作(要帶jvm)JavaJVM
- FreeBSD手工編譯安裝程式(轉)編譯
- 使用NSIS製作安裝包
- Redhat kickstart 安裝光碟製作Redhat
- RedHat DVD安裝盤製作Redhat
- 用 Delphi 編寫 VxD 裝置驅動程式(轉) (轉)
- 使用docker安裝codimd,搭建你自己的線上協作markdown編輯器Docker
- InstallShield6.3安裝檔案製作要點 (轉)
- 升級安裝包的製作
- 製作一個自己的軟體包CD(轉)
- 自己的IE——用VB製作瀏覽器 (轉)瀏覽器
- win10怎麼製作安裝u盤_win10安裝U盤製作教程Win10
- U盤如何製作win10安裝盤|win10安裝U盤製作方法Win10
- Linux下製作簡單的仿Windows安裝介面(轉)LinuxWindows
- 編寫自己的php擴充套件函式 (轉)PHP套件函式
- 1.安裝、配置、編寫、理解
- DMG Canvas 4.0.7 DMG安裝包製作Canvas
- Mac OS製作Ubuntu安裝U盤MacUbuntu
- InstallShield製作升級安裝包
- 製作iPhone PXL安裝包的方法iPhone
- Mac 製作 win10 安裝盤MacWin10
- 隨身碟如何製作win10安裝盤|win10安裝隨身碟製作方法Win10
- 編寫自己的程式碼庫(javascript常用例項的實現與封裝)JavaScript封裝
- 編寫自己的 TypeScript CLITypeScript