Mal wieder IActiveDesktop



  • Oha, okay jetzt habe ich es auch gesehen 🤡
    Habe es gerade geprüft, das hier funktioniert als Konsolenprogramm mit VS05 auch ohne afx.h

    #define _WIN32_IE 0x400
    
    #include <windows.h>
    #include <tchar.h>
    #include <wininet.h>
    #include <shlobj.h>
    
    long changeWallpaper (char *strPicPath, DWORD flags)
    {
    	WCHAR tempstr[MAX_PATH];
    	MultiByteToWideChar (CP_ACP, 0, strPicPath, -1, tempstr, sizeof(tempstr) );
    
    	HRESULT hr;
    	IActiveDesktop *pActiveDesktop;
    
    	CoInitialize(NULL);
    	hr = CoCreateInstance (CLSID_ActiveDesktop, NULL,CLSCTX_INPROC_SERVER,IID_IActiveDesktop, (void**)&pActiveDesktop);
    	if(hr == S_OK )
    	{
    		pActiveDesktop->SetWallpaper(tempstr, 0);
    		WALLPAPEROPT wpo;
    		wpo.dwSize = sizeof(WALLPAPEROPT);
    		wpo.dwStyle = flags;
    		pActiveDesktop->SetWallpaperOptions(&wpo,0);
    		pActiveDesktop->ApplyChanges(AD_APPLY_ALL);
    		pActiveDesktop->Release();
    		return TRUE;
    	}
    	else return FALSE;
    }
    
    int main ()
    {
    	changeWallpaper ("C:\\Dokumente und Einstellungen\\Sebastian\\Eigene Dateien\\Eigene Bilder\\Jessica_Alba.jpg", 0);
    	return 0;
    }
    

    Raten würde ich dir auch zu VS. Dev++ ist nicht wirklich das Wahre.



  • Felix15 schrieb:

    @Jochen: Also hat man das bisher noch nie mit Dev c++ gemacht?

    Ich kenn mich mit Dev C++ nicht aus... weiss nur, dass man da das PSDK nicht einbinden kann, sondern das nehmen muss was mitkommt... und das ist in unserer schnelllebigen Zeit leider schlecht...



  • Ok, danke für eure Antworten. Ich probiers dann mal mit Visual Studio. Wenn ihr doch einmal herausfinden solltet, wie das mit dev c++ geht, schreibt mir bitte ne Mail.



  • Dev-C++ wird seit Februar 2005 nicht mehr weiterentwickelt.
    Alternative (außer VisualStudio): Code:Blocks

    greetz, Swordfish



  • Swordfish schrieb:

    Code:Blocks

    Aber das Problem mit dem PSDK bleibt dabei das gleiche, oder?



  • Jochen Kalmbach schrieb:

    Swordfish schrieb:

    Code:Blocks

    Aber das Problem mit dem PSDK bleibt dabei das gleiche, oder?

    Das Problem bleibt das gleiche wenn der MinGW verwendet wird. Code::Blocks ist nur eine IDE!



  • Fazit: Code:Blocks ist nicht verwendbar...



  • MinGW ist nicht verwendbar 😉

    greetz, Swordfish



  • kann man sich nicht die nötigen definitionen aus dem windows sdk klauen?



  • Und woher die a-Dateien nehmen?
    Wenn Du zu viel Zeit hast, mag das ja der Weg sein...


Anmelden zum Antworten