// *********************************************************
// 使用中かどうか
// *********************************************************
BOOL LboxIEControl::IsBusy( void )
{
if ( this->pIEControl == NULL ) {
this->SetControlErrorMessage();
return false;
}
if ( this->hWnd == NULL ) {
this->SetWndErrorMessage();
return false;
}
BOOL bRet;
bRet = false;
SHDocVw::IWebBrowser2Ptr pIE;
pIE.operator = (
(SHDocVw::IWebBrowser2Ptr *)&(this->pIEControl)
);
try {
if ( pIE != NULL ) {
READYSTATE sts;
sts = pIE->GetReadyState();
switch( sts ) {
case READYSTATE_UNINITIALIZED:
bRet = false;
break;
case READYSTATE_LOADING:
bRet = true;
break;
case READYSTATE_LOADED:
bRet = true;
break;
case READYSTATE_INTERACTIVE:
bRet = true;
break;
case READYSTATE_COMPLETE:
bRet = false;
break;
}
}
else {
bRet = false;
}
}
catch (_com_error &e)
{
bRet = false;
}
this->pIEControl = pIE.Detach( );
return bRet;
}
|