Asmodeus
2005-07-07, 09:55:52
Ich habe folgendes, merkwürdiges Problem:
Mein Programm enthält folgendes Code-Fragment:
HINSTANCE NVLib = LoadLibrary("NVCPL.dll");
if(NVLib == NULL)
{
LogFile << "ERROR message: Loading of NVCPL.dll file failed. File not found.\n";
LogFile.close();
return;
}
NvCplGetDataIntType NvCplGetDataInt = NULL;
NvCplSetDataIntType NvCplSetDataInt = NULL;
NvCplGetDataInt = (NvCplGetDataIntType)::GetProcAddress(NVLib,"NvCplGetDataInt");
NvCplSetDataInt = (NvCplSetDataIntType)::GetProcAddress(NVLib,"NvCplSetDataInt");
if((NvCplGetDataInt == NULL) || (NvCplSetDataInt == NULL))
{
LogFile << "ERROR message: Loading of NVCPL.dll methods failed. Methods not found.\n";
FreeLibrary(NVLib);
LogFile.close();
return;
}
if(NvCplGetDataInt(NVCPL_API_NUMBER_OF_SLI_GPUS,&NumberSLIGPUs) == false)
{
LogFile << "ERROR message: Loading of NVCPL.dll NvCplGetDataInt() method failed.\n";
FreeLibrary(NVLib);
LogFile.close();
return;
}
Bei der Kombination 6800 Ultra + 77.72 Treiber funktioniert die ganze Sache auch wunderbar. Bei der Kombination 7800 GTX + 77.72 Treiber stürzt mein Programm im Release-Modus bei:
NvCplGetDataInt(NVCPL_API_NUMBER_OF_SLI_GPUS,&NumberSLIGPUs)
jedoch immer ab. Dabei erscheint die Fehlermeldung, dass Windows ein Problem festgestellt hat und das Programm deshalb beendet werden muß. Wenn ich das Nvidia eigene Programm NVcpl.exe verwende passiert genau das gleiche, mit der 6800 Ultra keine Probleme, mit der 7800 GTX kommts zum Absturz.
EDIT: Anzumerken wäre vielleicht noch, dass die 7800 in einem ASUS A8N-SLI Premium Board steckt, und dort im Bios die Einstellungen natürlich auf Single-Card stehen.
Hat irgend jemand eine Idee, woran das liegen könnte?
Gruss, Carsten.
Mein Programm enthält folgendes Code-Fragment:
HINSTANCE NVLib = LoadLibrary("NVCPL.dll");
if(NVLib == NULL)
{
LogFile << "ERROR message: Loading of NVCPL.dll file failed. File not found.\n";
LogFile.close();
return;
}
NvCplGetDataIntType NvCplGetDataInt = NULL;
NvCplSetDataIntType NvCplSetDataInt = NULL;
NvCplGetDataInt = (NvCplGetDataIntType)::GetProcAddress(NVLib,"NvCplGetDataInt");
NvCplSetDataInt = (NvCplSetDataIntType)::GetProcAddress(NVLib,"NvCplSetDataInt");
if((NvCplGetDataInt == NULL) || (NvCplSetDataInt == NULL))
{
LogFile << "ERROR message: Loading of NVCPL.dll methods failed. Methods not found.\n";
FreeLibrary(NVLib);
LogFile.close();
return;
}
if(NvCplGetDataInt(NVCPL_API_NUMBER_OF_SLI_GPUS,&NumberSLIGPUs) == false)
{
LogFile << "ERROR message: Loading of NVCPL.dll NvCplGetDataInt() method failed.\n";
FreeLibrary(NVLib);
LogFile.close();
return;
}
Bei der Kombination 6800 Ultra + 77.72 Treiber funktioniert die ganze Sache auch wunderbar. Bei der Kombination 7800 GTX + 77.72 Treiber stürzt mein Programm im Release-Modus bei:
NvCplGetDataInt(NVCPL_API_NUMBER_OF_SLI_GPUS,&NumberSLIGPUs)
jedoch immer ab. Dabei erscheint die Fehlermeldung, dass Windows ein Problem festgestellt hat und das Programm deshalb beendet werden muß. Wenn ich das Nvidia eigene Programm NVcpl.exe verwende passiert genau das gleiche, mit der 6800 Ultra keine Probleme, mit der 7800 GTX kommts zum Absturz.
EDIT: Anzumerken wäre vielleicht noch, dass die 7800 in einem ASUS A8N-SLI Premium Board steckt, und dort im Bios die Einstellungen natürlich auf Single-Card stehen.
Hat irgend jemand eine Idee, woran das liegen könnte?
Gruss, Carsten.