问题标签 [tchromium]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
delphi - 在 Chromium 嵌入式浏览器中隔离 cookie/用户的正确方法是什么?
我已经搜索了好几天没有解决方案。
我需要在一个应用程序中使用多个 Chromium 实例,并且每个实例都使用不同的帐户登录到同一个站点(例如:outlook.com)。
我尝试了这个解决方案,但 DECF3 新版本中没有“OnGetCookieManager”事件。显然,在 1547 CEF3 中删除了一个相关的错误和事件onGetCookieManager 。
我试过这个,但它也不起作用。
这真的可能吗?如何?
我正在使用 DCEF3(修订版:0cc175e7a629)和 Delphi XE3。
chromium - 以编程方式运行 ChromiumOSR
我正在使用最新版本的 DCEF3,并尝试在控制台应用程序中以编程方式运行 ChromiumOSR。我一开始天真地尝试了这段代码:
但它不起作用并引发了访问冲突。然后我发现这个线程Getting errors create ChromiumOSR programatically并相应地修改了我的代码:
虽然我不再遇到任何访问冲突,但我的代码仍然无法正常工作。事实上,我插入了一个代理并嗅探了连接:从未向http://google.com发出任何请求。我在控制台应用程序中确实收到以下错误:ERROR - running without renderer sandbox。但是,根据我在 Google 上的搜索,可以“忽略”该错误,并且代码应该仍然可以工作。
当然,如果我在设计时在表单应用程序中创建 TChromiumOSR,一切正常。但是,我需要在控制台应用程序中以编程方式使用它。
c++ - TChromium (RAD Studio, C++ Builder):如何使用 VisitDom 等类似方法?
我需要编写一个在其中使用浏览器组件的 Windows 应用程序。我选择了 RAD Studio 的 C++ Builder,因为我过去已经使用过它,但是,我在 C++ 编程方面的经验不如我在 web-dev 方面的经验丰富(我主要是 web 开发人员:JS、PHP 等...),所以,我在实现我的项目时遇到了一些问题。我希望,我错过了 C++ 专业专家可以尽快解决的一些非常基本的问题。
内置的 TWebBroswer 组件有很多缺点,所以我决定使用 Chromium ( https://github.com/hgourvest/dcef3 )。安装它并使它不仅在 Delphi 中工作,而且在 C++ Builder 中也需要花费时间,但是,我有一个 TChromium 项目,目前可以编译并正常工作:我可以浏览页面,执行 JS和更多。
尽管如此,我仍然无法解决一个问题:访问文档的 DOM。在 Google 搜索结果中,我发现没有任何帮助:一个有相同问题但没有答案的主题(http://www.cyberforum.ru/cpp-builder/thread996496.html)和文档。
在文档中,有人说我必须为此目的使用 VisitDom 方法,但我不知道如何在 C++ Builder 中执行此操作。
在此 C++ 演示中:https ://code.google.com/p/chromiumembedded/source/browse/trunk/cef3/tests/cefclient/dom_test.cpp?r=689我看到以下代码:
然后,在 VisitDom 方法中:
当我试图编译这段代码时,会发生错误(在 C++ Builder 中),例如:
后来,我尝试使用来自这个主题的建议(不是 DOMVisitor - StringVisitor,但我认为,如果我能让其中一个工作,我对第二个没有问题):https ://groups.google.com /forum/#!msg/delphichromiumembedded/DckdcKOCLzw/-zgUXOUTXa4J它是用Delphi编写的,所以我不确定我是否正确地将代码翻译成C++。
在 Unit1.h 中,我已按照讨论将 ICefStringVisitor 添加到 TForm1,并将 Visit 方法添加到私有声明部分:
在 Unit1.cpp 我添加了:
此代码编译并运行,但我立即收到此错误并且应用程序终止:
我厌倦了为此而挣扎。任何有经验的人都可以建议我如何在 RAD Studio C++ Builder 中使用所有这些 VisitDom、ViewSource 和其他方法吗?正如我所见,在 Delpi 中,这相当容易。
PS如果它会有所帮助,在ceflib.hpp中我发现了以下声明:
delphi - delphi xe8 + twebbrowser:如何在里面使用Jquery进行通信?
我的目标是创建一个与 webbrowser 交互的 delphi XE8 项目(VCL 或 fireMonkey)。
我想使用 JS (jquery) 的力量来访问 DOM,提取一些数据并将它们发送回 delphi。
我尝试使用 twebbrowser 并且...任何页面都会给我大量的 JS 错误:我认为 twebbroser 是基于非常旧的浏览器,例如 Internet explorer8
我运行windows7 + IE11
1)我应该去铬浏览器吗?(Tchromoium 或 Chromiumembedded ?)
2)如何使它与Jquery通信?
问候
c++ - C++ Builder 上的 DCEF3,如何获取 ICefCookieManager
我在 Rad Studio XE 中为 C++ 编译了 DCEF3。它工作得很好,但我不知道如何使用 cookie。我在 delphi 中读到我必须创建类型为 ICefCookieManager 的变量,但是如何在 C++ Builder 中获取该类?感谢帮助。
delphi - Delphi TChromium / DCEF3 - 不断的访问冲突
我正在尝试使用 DCEF3 TChromium 作为 TWebbrowser 组件的替代品。我下载了这些软件包并将其安装在我的 IDE(Delphi 2007)上。
我正在 demos\guiclient 上测试演示,当我尝试打开某些网页时,我得到了大量的访问冲突异常并且我的应用程序崩溃了。如果我在 Delphi 中,我会在 Delphi 本身崩溃之前得到这个异常:
'断言失败:'item.src' in \win32scr\DBKIMPL.CPP' 在第 2691 行'
存在此问题的页面的一个示例是 www.whatsmyuseragent.com
正确打开的页面的一个示例是 www.google.com
经过大量测试后,我发现如果我将 TChromium.Options.Javascript 设置为 STATE_DISABLED,应用程序就不会再崩溃了。但它不会运行页面的 JS 代码,所以它没有用,因为页面本身无法正确加载。
任何想法都将不胜感激,这个问题让每个拥有使用 TWebbrowser 的应用程序并需要紧急更换它的人都感兴趣。因为 TWebbrowser 使用 Internet Explorer 并且它已经停产,即使 Microsoft 在未来的 Windows 版本中继续提供 MSHTML,它也不会遵循未来的 Web 标准,并且将来页面也不会正确加载。事实上,我已经在使用最新网络标准的页面中遇到了这种问题。
delphi - TChromium:GetSourceProc 和不兼容的类型:'常规过程和方法指针'
我需要从 TChromium 中加载的页面获取源 HTML,但我需要将源存储在另一个类的变量中。换句话说,回调函数需要在另一个类中,我不能这样做,因为这个异常:
E2009 不兼容的类型:“常规过程和方法指针”
这是我的代码。仅当“StringVisitor”函数在“Form1”类之外时才有效。
有任何想法吗 ?
delphi - TChromium:如何保持会话活跃
使用 DCEF3 TChromium 时,我怎样才能使会话保持活动状态?
例如,如果我去一个网站并登录它,当我关闭我的应用程序并再次打开它时,我需要再次登录。我想让会话保持活跃,就像我使用谷歌浏览器一样。
我尝试在我的应用程序“uses”子句中添加“CefLib”并像下面的代码一样设置“CefCache”,但是虽然我可以看到文件存储在“cookies”文件夹中,但保持会话活动似乎没有什么区别:
提前致谢。
delphi - DCEF3 TChromium:迭代 DOM 并单击按钮/填充输入
因为 Internet Explorer 已死,我正在(漫长的)过程中用 TChromium 在我的所有应用程序中替换 TWebbrowser。
使用 TWebbrowser,我们有一个完整且文档齐全的接口,可以通过 IHTMLElement 接口访问 DOM。
由于 DCEF3 文档几乎不存在,我正在寻找如何(如果可能)在 TChromium 中迭代和操作 DOM 的示例:
- 选择/获取元素的 HTML 源
- 点击一个按钮
- 填写输入
- 聚焦一个控件
是否有本机界面来执行此操作,或者唯一的方法是直接使用 javascript ?
任何帮助将不胜感激。
提前致谢 !
delphi - Delphi Chromium Embedded (TChromium) - 如何静音所有声音?
在 TChromium 中加载网页时,有没有办法防止声音播放?事实上,我不希望我的应用程序播放任何声音。