JPG nach BMP
-
_fastcall TForm1::SetWallpaper(AnsiString)' is not a member of 'TForm1'
Was muss ich noch machen?
Und wie führe ich es dann aus?
z.B. dann bei einem ButtonklickSetWallpaer(?...?);
Entschuldigt die für euch dummen Fragen

-
Du musst die Funktion auch in der Header-Datei deklarieren.
-
OK, habe das nun so unter private definiert
bool __fastcall SetWallpaper(AnsiString APictureFileName);
nun kommen aber 7 Fehler
[C++ Error] Unit1.cpp(27): E2268 Call to undefined function 'CoInitialize' [C++ Error] Unit1.cpp(28): E2451 Undefined symbol 'IActiveDesktop' [C++ Error] Unit1.cpp(28): E2451 Undefined symbol 'pActiveDesktop' [C++ Error] Unit1.cpp(30): E2268 Call to undefined function 'CoCreateInstance' [C++ Error] Unit1.cpp(31): E2451 Undefined symbol 'IID_IActiveDesktop' [C++ Error] Unit1.cpp(36): E2451 Undefined symbol 'AD_APPLY_ALL' [C++ Error] Unit1.cpp(38): E2268 Call to undefined function 'CoUninitialize'seit ihr euch sicher, dass der Code richtig ist und für den BCB?
#include "Unit1.h"
und dann folgendes ist drinnen
#define NO_WIN32_LEAN_AND_MEAN
#include <vcl.h>obwohl diese includes für den BCB doch überflüssig wären
-
OK, mal langsam:
du schreibest den Code von oben in die *.cpp-Datei und in der *.h Datei ergänst du nur ganz oben:#define NO_WIN32_LEAN_AND_MEANund unter private:
bool __fastcall TForm1::SetWallpaper(AnsiString APictureFileName);Dann erstellst du auf Form1 einen Button und rufst die Funktion in OnClick auf:
SetWallpaper("Z:\\Wallaper\\1.jpg");Dann müsste es eigentlich funktionieren!
ALexander Sulfrian
-
Danke Alexander Sulfrian, sptzenmäßif erklär!, aber es funktionier immernoch nicht. Wenigstens weiß ich jetzt wie diese bool Funktion geht, echt super. Und die deklarationen in den *.h
Dafür Danke ich dir!
Aber, ich glaube so deppert kann ich gar nicht sein, dass ich es jetzt immernoch nicht auf die Reihe gekrigt habe.
Wenn das jemand mit den Informationen hinbekommt, dann bitte melden.
Wenns jemand anders schafft, bitte auch melden
-
Hallo Leute
Ich weiss, dass dieser Post uralt ist, ich habe aber das gleiche Problem:
Kann den Code nicht ausführen. Welche Header müssen dafür eingebunden werden? Laut MSDN muss shlobj.h genutzt werden. Es funktioniert aber nicht...
Danke im Voraus
-
-
"Funktioniert nicht" ist keine Fehlerbeschreibung.
-
Danke, aber das Problem besteht weiterhin
habe folgende Includes
registry.hpp
shlobj.h
ComObj.hppaber BCB6 Enterpr gibt folgendes aus
Build
[C++ Error] shobjidl.h(2193): E2238 Multiple declaration for 'FOLDERSETTINGS'
[C++ Error] shobjidl.h(8095): E2238 Multiple declaration for 'DESKBANDINFO'
[C++ Error] shlobj.h(1422): E2238 Multiple declaration for 'FVSHOWINFO'
[C++ Error] shlobj.h(3457): E2238 Multiple declaration for 'SHELLFLAGSTATE'binde ich irgendetwas zuviel ( Multiple declaration) oder zuwenig ein???
Bitte helft mir
-
Unter Projekt->Optionen->Verzeichisse/Bedingungen dort unter Bedingungen NO_WIN32_LEAN_AND_MEAN eintragen
-
Vielen, vielen Dank. Es funktioniert endlich
-
Siehe FAQ und auch weiter oben in diesem thread.
Augen auf beim Eierkauf!