为什么脚本不起作用/未在 Web 浏览器中按下按钮 (control/component)?
Why the script does not work / the button is not pressed in the web browser (control/component)?
我写了两个程序。一个在 Delphi 2009 年,另一个在 Visual Studio 2019 年查看相同的 html 页面。我使用了 twebbrowser 组件(或 webbrowser 控件)。在这两种情况下,在webbrowser的window中点击页面上的按钮都不起作用,相应的java脚本也不会执行。该页面显示一条消息,表明我的浏览器已过时。尝试以编程方式按下按钮失败(没有任何反应,也没有错误)。但该按钮在 Internet Explorer 11 中有效。按钮代码:
<div id="showAll" class="showAllClass block" onclick="showAll(1, this)">
<a href="javascript:void(0);">Show all</a>
</div>
Delphi的代码:
var
A : IHTMLElement3;
doc : IHTMLDocument3;
v : OleVariant;
begin
A := (MyWebbrowser.Document as IHTMLDocument3).getElementById('showAll') as IHTMLElement3;
v:=Unassigned;
(A as IHTMLElement3).FireEvent('onclick',v);
end;
C#代码:
webBrowser1.Document.GetElementById("showAll").InvokeMember("onclick");
我在这里 找到了答案
"YourApplicationFileName.exe"=dword:00002af9
"YourApplicationFileName.vshost.exe"=dword:00002af9
通过路径到注册表
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION
我写了两个程序。一个在 Delphi 2009 年,另一个在 Visual Studio 2019 年查看相同的 html 页面。我使用了 twebbrowser 组件(或 webbrowser 控件)。在这两种情况下,在webbrowser的window中点击页面上的按钮都不起作用,相应的java脚本也不会执行。该页面显示一条消息,表明我的浏览器已过时。尝试以编程方式按下按钮失败(没有任何反应,也没有错误)。但该按钮在 Internet Explorer 11 中有效。按钮代码:
<div id="showAll" class="showAllClass block" onclick="showAll(1, this)">
<a href="javascript:void(0);">Show all</a>
</div>
Delphi的代码:
var
A : IHTMLElement3;
doc : IHTMLDocument3;
v : OleVariant;
begin
A := (MyWebbrowser.Document as IHTMLDocument3).getElementById('showAll') as IHTMLElement3;
v:=Unassigned;
(A as IHTMLElement3).FireEvent('onclick',v);
end;
C#代码:
webBrowser1.Document.GetElementById("showAll").InvokeMember("onclick");
我在这里
"YourApplicationFileName.exe"=dword:00002af9
"YourApplicationFileName.vshost.exe"=dword:00002af9
通过路径到注册表
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION