Die richtige *.dll mit LoadLybrary laden?



  • Hallo forum,
    wie kann ich ereichen das die aktuelle *.dll geladen wird, es wird immer die version 5 zurückgegeben, ich brauche aber die 6.
    ich benutze :

    // 
    
    	DWORD dwHigh, dwLow;
    
    	GetCommonControlVersion(dwHigh, dwLow);
    
    	if (dwHigh < 6) [b]// dwHigh ist immer 5 bei mir, jetzt[/b]
    	{
    
    ........................
    
    // die funktion GetCommonControlVersion(dwHigh, dwLow);
    
    bool CSortHeaderCtrl::GetCommonControlVersion(DWORD &dwHigh, DWORD &dwLow)
    {
    
    	bool bRet = false;
    
    	HMODULE hMod = LoadLibrary("COMCTL32.DLL"); [b]// um diese datei geht es! es gibt die 5er und die 6er version aber es wird immer die 5 geladen..[/b]
    
    	if (hMod != NULL)
    	{
    		DLLGETVERSIONPROC pDllGetVersion;
    		pDllGetVersion = (DLLGETVERSIONPROC) GetProcAddress(hMod, "DllGetVersion");
    
    		if (pDllGetVersion)
    		{
    			DLLVERSIONINFO dvi;
    			HRESULT hr;
    
    			ZeroMemory(&dvi, sizeof(dvi));
    			dvi.cbSize = sizeof(dvi);
    
    			hr = (*pDllGetVersion)(&dvi);
    
    			if (SUCCEEDED(hr))
    			{
    				memcpy(&dwHigh, &dvi.dwMajorVersion, sizeof(DWORD));
    				memcpy(&dwLow, &dvi.dwMinorVersion, sizeof(DWORD));
    			}
    		}
    		FreeLibrary(hMod);
    	}
    	else
    	{
    		bRet = false;
    	}
    	return bRet;
    }
    

    ich benutze es um das CListCtrl Control, den spaletenkopf, im XP-Style aussehen zu lassen, in einer anderer anwendung gehts, ich finde nur kein unterschied zwischen den beiden, ich rufe beide funktionen gleich auf??? In der msdn steht das ein manifest erstellt werden muß um die richtige dll zu laden, aber wie? 😕

    danke
    mfg
    mirsad



  • Hast du denn eine Manifest Datei eingebunden? Ich glaube dadurch kann man die Version 6 bekommen.



  • lol, hatte den letzten satz nicht gelesen.

    aber mal ehrlich, um herauszufinden wie das mit der manifest datei geht, hättest du ja wohl über google finden können.

    http://www.winapi.net/index.php?inhalt=t8



  • lol,oh je, danke das wars! 🤡

    grüsse
    mirsad


Anmelden zum Antworten