VC獲得程式自身的版本號
作業系統: Windows7 64位
執行環境: Visual Studio 10
檔案編碼: Unicode
char* GetLocalPogramVersion() { TCHAR pFilePath[MAX_PATH] = {0}; DWORD dwRet = GetModuleFileName(NULL, pFilePath, MAX_PATH); if(dwRet == 0) { TRACE("h獲取程式的檔案路徑失敗,錯誤碼:%s\n",GetLastError()); return ""; } TRACE("程式自身的全路徑:%s\n",pFilePath); //獲取版本資訊大小 DWORD dwSize = GetFileVersionInfoSize(pFilePath,NULL); if (dwSize == 0) { TRACE("獲取版本資源長度失敗,檔案不包含版本資訊,錯誤碼:%d\n",GetLastError()); return ""; } TCHAR *pBuf = (TCHAR *)malloc(dwSize + 1); memset(pBuf, 0, dwSize + 1); //獲取版本資訊 DWORD dwRtn = GetFileVersionInfo(pFilePath,NULL, dwSize, pBuf); if(dwRtn == 0) { TRACE("獲取檔案版本資訊失敗,錯誤碼:%d\n",GetLastError()); return ""; } LPVOID lpBuffer = NULL; UINT uLen = 0; dwRtn = VerQueryValue(pBuf, TEXT("\\StringFileInfo\\080404b0\\FileVersion"), &lpBuffer, &uLen); if(dwRtn == 0) { delete pBuf; TRACE("請求的程式版本資訊不存在。\n"); return ""; } int iLen = 2*wcslen((TCHAR*)lpBuffer);//CString,TCHAR漢字算一個字元,因此不用普通計算長度 char* chRtn = (char *)malloc(iLen+1); memset(chRtn,0,iLen+1); wcstombs(chRtn,(TCHAR*)lpBuffer,iLen+1);//轉換成功返回為非負值 char* strVersion = (char *)malloc(iLen+1); memset(strVersion,0,iLen+1); strcpy(strVersion, chRtn); delete pBuf; TRACE("程式版本號:%s\n",strVersion); return strVersion; }
相關推薦
VC獲得程式自身的版本號
作業系統: Windows7 64位 執行環境: Visual Studio 10 檔案編碼: Unicode char* GetLocalPogramVersion() { TCHAR pFi
Delphi2010如何獲取程式內部自身版本號?
用原來的GetFileVersionInfo只能獲取Delpi7的程式版本號,用在Delphi2010中就不管用了 //------ 獲取檔案版本號function F_GetFileVersion(FN: string): string;var Temp, InfoSi
Qt軟體開發文件16---軟體更新:寫入程式版本資訊並讀取程式的版本號
實現軟體更新,需要寫入本地軟體的版本號,並讀取出來,與伺服器版本號相比較,決定是否進行軟體的更新。 1.寫入版本資訊: 寫入一個rc檔案,並將其匯入到Qt工程中。 在Qt工程中,利用RC_FILE+=version.rc 匯入工程 QT+VS編譯時,利用cmake匯入
C#如何設定程式名稱/版本號和圖示
在開啟的【屬性】視窗中,修改【程式集名稱】為需要的程式名稱【Listview示例程式】, 修改【預設名稱空間】名稱為本程式對應的標題名稱。 【程式集名稱】就是生成的程式檔案的名稱。 到這一步,程式的名稱修改完成,需要繼續修改圖示。
如何獲取應用程式的版本號和版本名
實現獲取應用程式的版本號和阪本名,通過獲取包管理器開始;步驟如下: 程式如下 public class MainActivity extends AppCompatActivity { Co
C#如何獲得檔案的版本號
獲取檔案的版本號寫成一個函式。 /// <summary> /// 獲取檔案的版本號 /// </summary> /// <param name="filePath">檔案的完整路徑</param> /// <r
獲取當前程式的版本號
private int getVersionCode() { try { //獲取packagemanager的例項 PackageManager packageManager = getPackageManager(); //getPackageN
Android基礎:教你如何獲取軟體自身版本號和Android系統版本號
前言 在Android軟體開發過程中,版本升級常常需要得到軟體版本,與伺服器作對比後決定是否升級,那麼如何獲取軟體版本呢?有時我們需要獲取系統版本已決定載入合適的資原始檔,系統版本又如何得到呢?假如我
c# winform獲取當前路徑exe程式的版本號
通常軟體自動更新時,需要比較新版本與舊版本的版本號,如果新檔案的版本號比舊檔案高,就替換舊檔案。(版本號一般可以在Visual Studio的程式資訊裡定義) 如何取得當前exe程式的版本號呢
微信小程式比較版本號
小程式基礎庫版本號使用 semver 規範,格式為 Major.Minor.Patch,其中Major、Minor、Patch均為整數,1.9.901、2.44.322、10.32.44 都是符合 se
vc設定程式版本, 獲取程式版本號
最近正在學vc,很多不會的,真是寸步難行,好在這個世界有網路這個好東西,遇到問題百度一下或是GOOGLE總能找到看來很有道理的答案,為了方便以後自己的學習,就總結了一下放在這裡,也歡迎大家發表真知灼見。 //很好,很方便,無需修改,可作為程式模組直接呼叫。 //獲取軟體當前的版本 //該版本號是在資原始檔
VS版本號和VC版本號之間的關系
vc vs 版本VC11是Visual C++的第十一個版本 是一個運行庫 在2012年跟Visual studio 2012一起發布 是Visual studio 2012必備的運行庫如下是括號是VS的版本號,左邊是VC版本號VC6VC7(2003)VC8(2005)VC9(2008)VC10(2010)V
【虛擬機器】關於VMware 提示“無法獲得VMCI驅動程式的版本:控制代碼無效”的解決方案
一、問題的出現 在VMware進行完虛擬機器安裝嚮導之後,剛要開啟虛擬機器進行作業系統的安裝時,會出現“無法獲得VMCI驅動程式的版本:控制代碼無效”的錯誤提示,如圖1 所示。(本人執行環境為Windows 10,VMware 12) &
linux 程式、動態庫、靜態庫內部新增版本號和編譯時間
給程式和庫新增版本號和庫,有利於維護和升級。 當然你可以在檔名上體現,比如有個程式叫 yun,檔名寫為 yun_1.0.2,但這個需要每次手動維護,而且不能100%確保當前程式就是那個版本。所以,把版本號體現在程式內部,是一個不錯的選擇。 --------------------------
Android獲取APP的應用程式名稱、包名、圖示,版本號基本資訊
在開發過程中 我們經常需要獲取程式名稱, 包名 版本號等相關資訊,只需要用到下面這個工具類,即可: /跟App相關的輔助類 public class AppUtils { /** * 獲取應用程式名稱 */ public stati
MFC中獲取程式自身的版本資訊
收集整理自CSDN論壇。 首先、在Stdafx.h中引入連結庫: #pragma comment(lib,"Version.lib") 在對應的處理方法中如下: char FileVerInfo[4096]; DWORD dwVerLen = 0; CString strPath
Delphi中取得程式版本號
Delphi做的程式,如果想包含版本資訊, 必須在Delphi的整合編輯環境的選單“Project/Options/Version Info”裡面新增版本資訊。即在Version Info 選項卡中選中“Include version information in project”項,並在“Module ve
Android獲得當前作業系統的版本號
activity_main.xml檔案中<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.
關於VMware問題:無法獲得 VMCI 驅動程式的版本: 控制代碼無效。驅動程式“vmci.sys”的版本不正確......
問題 解決 根據配置檔案路徑找到對應的.vmx檔案: 用編輯器開啟,找到vmci0.present = “TRUE”一項: 將該項修改為:vmci0.present = “FALSE”
[轉貼]VC編譯器版本號_MSC_VER and _MSC_FULL_VER
Visual Studio version and discrimination macros Abbreviation Pro