请教高手,Windows Mobile手机拔出数据线后再次重新插入数据线,调用CeCreateProcess失败返回值是0x80070015(设备未就绪).
Windows Mobile手机拔出数据线后再次重新插入数据线,此时调用CeCreateProcess就不行了,返回值是0x80070015(设备未就绪).而且我拔出之前调用了CeUninit,插入数据线后又调用了CeRapiInitEx,还是失败,为什么啊? --------------------编程问答-------------------- 判断CeRapiInitEx是否成功,用SUCCEEDED(hr)判断返回的句柄。成功了再继续调用CeCreateProcess --------------------编程问答-------------------- 我完全用的是MSDN上的代码:
HRESULT hr = E_FAIL;
RAPIINIT riCopy;
bool fInitialized = false;
ZeroMemory(&riCopy, sizeof(riCopy));
riCopy.cbSize = sizeof(riCopy);
hr = CeRapiInitEx(&riCopy);
if (SUCCEEDED(hr))
{
DWORD dwRapiInit = 0;
fInitialized = true;
dwRapiInit = WaitForSingleObject(
riCopy.heRapiInit,
5000);
if (WAIT_OBJECT_0 == dwRapiInit)
{
// heRapiInit signaled:
// set return error code to return value of RAPI Init function
hr = riCopy.hrRapiInit;
}
else if (WAIT_TIMEOUT == dwRapiInit)
{
// timed out: device is probably not connected
// or not responding
hr = HRESULT_FROM_WIN32(ERROR_TIMEOUT);
}
else
{
// WaitForSingleObject failed
hr = HRESULT_FROM_WIN32(GetLastError());
}
}
if (fInitialized && FAILED(hr))
{
CeRapiUninit();
}
return hr;
手机拔了以后这里居然也能成功,只要之前连接成功的! --------------------编程问答-------------------- 调用CeRapiInitEx成功,用SUCCEEDED(hr)判断返回的句柄。
成功了再继续调用CeCreateProcess还是返回0x80070015(设备未就绪).怎么解决啊?急急急急
补充:移动开发 , Windows Phone