Visual C++ 2005 findet Irrlicht.dll nicht

Hallo,

Ich benutze den Compiler Visual C++ 2005 Express Edition und wollte mit Irrlicht 1.3.1 ein bisschen rumprobieren, hab alles so eingestellt das die beispiele funktionieren, aber wenn ich ein programm von mir starte kommt immer die meldung das die Irrlicht.dll nicht gefunden werden kann. Weiss jemand wie ich das ändern kann?

Gruß Michael

Ich poste mal den code

#include

using namespace irr;
using namespace core;
using namespace video;
using namespace scene;
using namespace io;
using namespace gui;

#pragma comment (lib, "Irrlicht.lib")

int main()
{
 IrrlichtDevice \*device=createDevice(EDT\_SOFTWARE, dimension2d (512,384), 16, false, false, false, 0);
 device-\>setWindowCaption(L"Hello World");
 IVideoDriver\* driver=device-\>getVideoDriver();
 ISceneManager\* manager=device-\>getSceneManager();
 IGUIEnvironment\* guienv=device-\>getGUIEnvironment();
 guienv-\>addStaticText(L"Hello World!!!", rect(10,10,200,22),true);
 IAnimatedMesh\* mesh= manager-\>getMesh("F:\\Dokumente und Einstellungen\\Name\\Eigene Dateien\\fighter\\fighter1.3ds");
 IAnimatedMeshSceneNode\* node=manager-\>addAnimatedMeshSceneNode(mesh);
 if (node)
 {
 node-\>setMaterialFlag(EMF\_LIGHTING, false);
 node-\>setFrameLoop(0,310);
 node-\>setMaterialTexture(0, driver-\>getTexture("F:\\Dokumente und Einstellungen\\Name\\Eigene Dateien\\fighter\\psionic.jpg"));
 }
 manager-\>addCameraSceneNode(0, vector3df(0,30,-40), vector3df(0,5,0));
 while(device-\>run())
 {
 driver-\>beginScene(true, true, SColor(255,100,101,140));
 manager-\>drawAll();
 guienv-\>drawAll();
 driver-\>endScene();
 }
 device-\>drop();
 return 0;
}

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo,

Hi
Vielleicht musst du einfach nur die Irrlicht.dll mit zu deiner erstellten exe packen. Normalerweise müsste diese Dll beim Irrlicht Paket mit dabei gewesen sein. So war es bei mir zumindest beim Irrlicht Paket für DevCpp.
Also ich würde sagen, dass du einfach mal nach der Dll suchst und die dann mit zu deinem kompilierten Programm packst.

Gruß Marius.

Ich benutze den Compiler Visual C++ 2005 Express Edition und
wollte mit Irrlicht 1.3.1 ein bisschen rumprobieren, hab alles
so eingestellt das die beispiele funktionieren, aber wenn ich
ein programm von mir starte kommt immer die meldung das die
Irrlicht.dll nicht gefunden werden kann. Weiss jemand wie ich
das ändern kann?

Gruß Michael

Hallo,

Hi
Vielleicht musst du einfach nur die Irrlicht.dll mit zu deiner
erstellten exe packen. Normalerweise müsste diese Dll beim
Irrlicht Paket mit dabei gewesen sein. So war es bei mir
zumindest beim Irrlicht Paket für DevCpp.
Also ich würde sagen, dass du einfach mal nach der Dll suchst
und die dann mit zu deinem kompilierten Programm packst.

Gruß Marius.

Meinst du ich soll die DLL einfach in den Ordner kopieren wo die exe datei rauskommt, oder dahin wo der Quellcode ist?

Gruß Michael

Okay, habs kopiert. Jetzt startet zwar das Programm aber es heisst dann später

Unbehandelte Ausnahme bei 0x100c09ce in Irrlicht test.exe: 0xC0000005: Zugriffsverletzung beim Lesen an Position 0x00000a28.

Der Code:

#include

using namespace irr;
using namespace core;
using namespace video;
using namespace scene;
using namespace io;
using namespace gui;

#pragma comment (lib, "Irrlicht.lib")

int main()
{
 IrrlichtDevice \*device=createDevice(EDT\_SOFTWARE, dimension2d (512,384), 16, false, false, false, 0);
 device-\>setWindowCaption(L"Hello World");
 IVideoDriver\* driver=device-\>getVideoDriver();
 ISceneManager\* manager=device-\>getSceneManager();
 IGUIEnvironment\* guienv=device-\>getGUIEnvironment();
 guienv-\>addStaticText(L"Hello World!!!", rect(10,10,200,22),true);
 IAnimatedMesh\* mesh= manager-\>getMesh("F:\\Dokumente und Einstellungen\\Name\\Eigene Dateien\\fighter\\fighter1.3ds");
 IAnimatedMeshSceneNode\* node=manager-\>addAnimatedMeshSceneNode(mesh);
 if (node)
 {
 node-\>setMaterialFlag(EMF\_LIGHTING, false);
 node-\>setFrameLoop(0,310);
 node-\>setMaterialTexture(0, driver-\>getTexture("F:\\Dokumente und Einstellungen\\Name\\Eigene Dateien\\fighter\\psionic.jpg"));
 }
 manager-\>addCameraSceneNode(0, vector3df(0,30,-40), vector3df(0,5,0));
 while(device-\>run())
 {
 driver-\>beginScene(true, true, SColor(255,100,101,140));
 manager-\>drawAll();
 guienv-\>drawAll();
 driver-\>endScene();
 }
 device-\>drop();
 return 0;
}

Gruß Michael

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo,

Okay, habs kopiert. Jetzt startet zwar das Programm aber es
heisst dann später

Unbehandelte Ausnahme bei 0x100c09ce in Irrlicht test.exe:
0xC0000005: Zugriffsverletzung beim Lesen an Position
0x00000a28.

 while(device-\>run())
 {
**driver-\>beginScene(true, true, SColor(255,100,101,140));**
 manager-\>drawAll();
 guienv-\>drawAll();
 driver-\>endScene();
 }
 device-\>drop();
 return 0;

Hab nach jeder Zeile etwas ausgeben lassen, und rausgefunden das es nach
driver->beginScene() abbricht. Stimmt da irgendwas nicht?

Gruß Michael

Problem gefunden. Hab das Irrlicht 1.4beta gedownloadet, hab aber die dll von der version 1.31 benutzt. Aber wieso ist der Hintergrund bei mir schwarz?

Gruß Michael

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo,

Hi,
Schön das es bei dir jetzt wenigstens startet :smile:.
Allerdings kann ich dir bei der Programmierung nicht helfen, da ich mich damit noch nicht beschäftigt habe. Da müsste dir dann jemand Anderes hier im Board, der schon mal mit der Engine programmiert hat, besser helfen können. Was ich dir aber noch empfehlen kann, wäre in die Dokumentation der Engine zu schauen und dort nach den entsprechenden Befehlen für das setzen der Hintergrundfarbe zu suchen. Natürlich nur wenn du das nicht bereits getan hast. Ansonsten müsste dir dabei wie gesagt jemand Anders helfen.
Gruß UsYer

Okay, habs kopiert. Jetzt startet zwar das Programm aber es
heisst dann später

Unbehandelte Ausnahme bei 0x100c09ce in Irrlicht test.exe:
0xC0000005: Zugriffsverletzung beim Lesen an Position
0x00000a28.

while(device->run())
{
driver->beginScene(true, true,
SColor(255,100,101,140));

manager->drawAll();
guienv->drawAll();
driver->endScene();
}
device->drop();
return 0;

Hab nach jeder Zeile etwas ausgeben lassen, und rausgefunden
das es nach
driver->beginScene() abbricht. Stimmt da irgendwas nicht?

Gruß Michael

Problem gefunden. Hab das Irrlicht 1.4beta gedownloadet, hab
aber die dll von der version 1.31 benutzt. Aber wieso ist der
Hintergrund bei mir schwarz?

Gruß Michael

Hallo,

Hi,
Schön das es bei dir jetzt wenigstens startet :smile:.
Allerdings kann ich dir bei der Programmierung nicht helfen,
da ich mich damit noch nicht beschäftigt habe. Da müsste dir
dann jemand Anderes hier im Board, der schon mal mit der
Engine programmiert hat, besser helfen können. Was ich dir
aber noch empfehlen kann, wäre in die Dokumentation der Engine
zu schauen und dort nach den entsprechenden Befehlen für das
setzen der Hintergrundfarbe zu suchen. Natürlich nur wenn du
das nicht bereits getan hast. Ansonsten müsste dir dabei wie
gesagt jemand Anders helfen.
Gruß UsYer

Das markierte wars. Ich hab die Dokumentation angeschaut, aber ich mache gerade eh diese Tutorials, das heisst ich werd das schon noch lernen.

Gruß Michael

Okay, habs kopiert. Jetzt startet zwar das Programm aber es
heisst dann später

Unbehandelte Ausnahme bei 0x100c09ce in Irrlicht test.exe:
0xC0000005: Zugriffsverletzung beim Lesen an Position
0x00000a28.

while(device->run())
{
driver->beginScene(true, true,
SColor(255,100,101,140));

manager->drawAll();
guienv->drawAll();
driver->endScene();
}
device->drop();
return 0;