天天看點

檢測本機是否安裝JRE的小程式

有的時候我們需要檢測本機是否安裝JRE ,以便可以確定JAVA程式的正确部署和運作。

可能有的人說最簡單的方法就是在指令行下輸入‘java -version’ ,

如果輸出了正确的版本資訊就說明已安裝正确,不過我們需要更為自動化和智能化的處理。

思路是這樣的,我們調用一個名為ShellExecute()的Win32 API函數,該函數會執行指定的程式,

如果正确執行了,則會傳回一個大于32的整數

否則,則會傳回一個小于32的整數。

基于以上的理論,寫了一個純C的小函數,可以友善嵌套在程式裡面。

#define GM_JAVA_VM L"java.exe"

BOOL isJreInstalled() { 

    HINSTANCE hInst = ShellExecute(NULL, L"Open", GM_JAVA_VM, NULL, NULL,SW_HIDE); 

    if( (int)hInst > 32 ) { 

        return TRUE; 

    }else { 

        return FALSE; 

    } 

}

該函數如果傳回FALSE說明JRE未能正确安裝。

本文轉自 kevx 51CTO部落格,原文連結:http://blog.51cto.com/spinlock/219902,如需轉載請自行聯系原作者