Recentemente abbiamo aggiornato VS 2005
-VS 2008
(Windows XP). Usiamo SlimDx
in uno dei nostri progetti. Tutto stava funzionando ok dopo l'aggiornamento, tranne il mio Recuperare funzione, che viene chiamato il ripristino devicelost/dispositivo che blocca conSlimDX Device.Reset blocca con un "D3DERR_INVALIDCALL: chiamata non valido (-2.005,530516 millions)" Errore
D3DERR_INVALIDCALL: chiamata non valido (-2005530516)
io uso Ctrl - Alt - Del e quindi Fuga per simulare il dispositivo perso.
void Recover()
{
try
{
if (res.Code == D3DERR_DEVICENOTRESET)
{
res = m_device.Reset(m_presentParams); //Crashes on this.
if (res.IsSuccess)
{
m_deviceLost = false;
}
}
}
catch(Exception e)
{}
}
è questo qualcosa a che fare con VS 2008
, come è abituato a lavorare bene con VS 2005
?
Qualcosa nel debug di stampa che ti aiuta? – Goz
Una ricerca rapida per "Reset D3DERR_INVALIDCALL" porta a MSDN. "La chiamata al metodo non è valida. Ad esempio, il parametro di un metodo può avere un valore non valido." Quindi il mio suggerimento sarebbe quello di verificare m_presentParams, contiene le informazioni che ci si aspetta? –
risolto: alcune delle risorse (blocchi di stato) non erano disposte. – ababeel