我有一个具有嵌入式Web浏览器的本机(Windows)应用程序。目前我正在从后端调用javascript函数(c ++ / c#)。但是,如果禁用了javascript,则会失败,我想提供一个回退机制。有没有办法确定javascript是否被禁用?
答案 0 :(得分:0)
在IE Web Control中,您只需强制启用JavaScript即可。请参阅以下接口,主机必须实现这些接口:
另一种方法是让你的HTML页面查询window.external对象并在其上调用一个方法,它在你的主机中实现,它将标志设置为true。不被调用意味着JavaScript没有被执行。
答案 1 :(得分:0)
HRESULT hr = CoCreateInstance(CLSID_InternetSecurityManager, NULL,
CLSCTX_INPROC_SERVER,IID_IInternetSecurityManager, (void**)&pSecurityMgr);
int policy = URLPOLICY_ALLOW;
hr = pSecurityMgr->ProcessUrlAction(L"http://www.google.com", URLACTION_SCRIPT_RUN,
(BYTE*)&policy, sizeof(policy), NULL, 0, PUAF_TRUSTED, 0);
如果hr = S_FALSE,则禁用javascript执行...