TWebBrowser 可以在没有 Application.ProcessMessages 的 Delphi 线程中使用吗?

2023-12-31

我正在尝试使用 TWebBrowser 在 Delphi 服务器应用程序 (XE2) 中创建网页的屏幕截图。屏幕捕获是通过对我的服务器的 Web 服务调用启动的,因此为了保持可扩展性,我希望在不依赖关键部分或 Application.ProcessMessages 来进行网页渲染的情况下为请求提供服务。

这可以用 TWebBrowser 来完成吗?


我已经在许多对象中完成了此操作,遗憾的是 TWebBrowser 对象与其父对象(特别是其 HWND 句柄)密切相关。 (另请参阅 TWebBrowser.HandleNeeded)

我得到的最好结果是将 TWebBrowser 和表单封装在 ActiveX 库中,因此其背后的“消息泵”与主应用程序是分离的。通过这种方式,ActiveX/COM 可以处理所有线程和同步问题。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

TWebBrowser 可以在没有 Application.ProcessMessages 的 Delphi 线程中使用吗? 的相关文章

  • 有什么办法可以将2个数组添加到一个数组中吗?

    有没有一种简单通用的方法可以将两个数组添加到一个数组中 在下面的情况下 不可能简单地使用C A B陈述 我想避免每次都为它制定算法 TPerson record Birthday Tdate Name Surname string end
  • 为什么我不能在接收数组参数的函数中使用 SetLength?

    我正在尝试使用以下函数来设置动态数组 即 var 参数 的长度 当我尝试编译代码时只有一个错误 dcc64 错误 lolcode dpr 138 E2008 不兼容类型 function execute var command array
  • delphi定时器比定时器服务中断例程更快

    大家好 我被要求为某人维护一个基于 Delphi 5 的程序 该程序使用一个计时器对象每 50 毫秒计时一次 并且在每次计时结束时运行单线程代码块 我只是想知道 如果执行这段代码所花费的时间比计时器滴答间隔长 会发生什么 这会很糟糕吗 例如
  • 如何更新Delphi对象检查器?

    继我最近发布的这个问题之后 组件编辑器可以在多个组件上执行吗 https stackoverflow com questions 14802371 can a component editor be executed on multiple
  • 如何在 Vista 上安装 Delphi 7

    我多次尝试在 Vista 上安装 Delphi 7 但 Vista 告诉我此应用程序 Delphi 7 存在已知问题 从而阻止了我这样做 我公司的其他几个人在 Vista 上安装 D7 时遇到了问题 由此得出的结论是 我们的 D7 应用程序
  • 如何在Delphi XE中通过名称获取类类型引用?

    我实际上正在尝试使用 Rtti 来实现通用方法调用程序 它应该像这样工作 我将提供类名 方法名和参数 调用者将通过调用此类的指定方法来完成其工作 因此 我需要类引用才能获取其 Rtti 信息并寻找我想要调用的方法 有没有办法在不实现我想要使
  • 加载 Jpg/Gif/Bitmap 并转换为 Bitmap

    我必须从 XML 文件加载图像 XML 文件中没有关于图像是否为 JPG GIF BMP 的信息 加载图像后 我需要将其转换为位图 有谁知道如何在不知道实际文件格式的情况下将图像转换为位图 我正在使用 Delphi 2007 2009 谢谢
  • Delphi TImageList 位图更改

    我正在使用 Delphi XE2 Update 3 Update 4 与我们的一些第 3 方组件不兼容 因此我们尚未更新 我在我的应用程序中使用 TImageList 我注意到很多时候当它从源视图切换到表单视图 F12 时 突然之前未修改的
  • delphi 变量值在循环中的线程中发生变化

    我的代码正在运行一个 for 循环来处理一些数据 如下所示 procedure printValue Value Integer begin TThread Synchronize TThread Current procedure beg
  • 运行delphi客户端自动化程序后excel.exe保持加载状态的原因是什么?

    我编写了一个 Delphi 程序 该程序从单个 XLS 文件的多个不同电子表格中提取数据并将其合并到文本文件中以供以后处理 这是德尔福7console程序 最相关的代码片段的摘录将向您表明 显然 我的程序表现得相当好 或者至少达到了它需要的
  • Async InputQuery 不处理“取消”按钮

    我正在使用一个简单的调用TDialogServiceAsync InputQuery 使用单个输入 它只是忽略了Cancel按钮和窗口的X关闭按钮 But the Ok按钮工作正常 这是我的代码 uses FMX DialogService
  • 使用 OLE 和 Delphi 提高 Word 文档中搜索替换的性能

    经过一些实验 我最终得到了以下代码来在 MSWord 中执行搜索和替换 此代码在页眉和页脚中也能完美运行 包括首页或奇数 偶数页的页眉和 或页脚不同的情况 问题是我需要打电话MSWordSearchAndReplaceInAllDocume
  • 我如何在Delphi中处理事件?

    例如 我有一个程序 在单击 Button1 后执行某些操作 如果没有 Button1Click 中的代码 如何处理按钮的 onclick 事件 我需要为 Button1 动态添加事件 unit Unit1 interface uses Wi
  • Delphi 返回 TList 时出错

    我做了一个非常简单的应用程序 但我有一个我真的无法理解的问题 看一下这个基本代码 unit Unit1 interface uses Winapi Windows Winapi Messages System SysUtils System
  • 如何在调试器中显示 TStringList 的内容?

    我想在调试应用程序时显示 TStringList 的全部内容 相反 我只是得到指示 Flist 仅显示地址 如果您使用的是 Delphi 2010 或更高版本 调试器允许使用调试可视化工具 http docwiki embarcadero
  • 为什么未初始化的指针会导致内存访问冲突接近 0?

    据说often 但并非总是如此 当你在接近于零的内存位置 比如 89 美元 获得 AV 时 你就有了一个未初始化的指针 但我也在 Delphi 书籍中看到了这一点 嗯 或者它们都是由同一作者写的 Update 引自 Bob Swart 等人
  • delphi中如何实现多重继承?

    我正在对一个旧库进行完全重写 我不确定如何处理这种情况 为了便于理解 大家都欢呼自行车类比 我有以下课程 TBike 自行车本身 TBikeWheel 自行车的一个轮子 TBikeWheelFront and TBikeWheelBack
  • TObjectList.Contains 导致 Delphi 2009 中的访问冲突

    在 Delphi 2009 中 到目前为止 我在泛型方面没有遇到大问题 使用 Generics Collections 列表 没有特殊的泛型功能 现在我发现这段代码会在访问的行中导致AVMyList Contains 如果我声明 TMyLi
  • Delphi AES 库 (Rijndael) 使用 KAT Vectors 进行测试

    对于这两个库 Delphi 加密概要 v 5 2 http code google com p delphidec TurboPower 密码箱 v 2 07 http lockbox seanbdurkin id au tiki list
  • 如何调试仅在应用程序关闭时发生的崩溃? (德尔福)

    因此 经过最近的一些更改 我们发现我们最古老的应用程序之一有时会在关闭时崩溃 这会以 运行时错误 216 消息的形式或来自 Windows 错误报告的消息的形式表明应用程序已停止工作 该应用程序已经发出OutputDebugString 每

随机推荐

  • 使用“LIMIT 1”是否可以加快主键查询速度?

    如果我有一个主键id我对密钥做了一个简单的查询 例如 SELECT id FROM myTable WHERE id X 它会找到一行然后停止查找 因为它是主键 还是最好告诉 mysql 通过使用来限制其选择LIMIT 1 例如 SELEC
  • 将图像发布到 REST API 并使用 Falcon 库收集数据的正确方法是什么?

    我尝试发布图像以通过 REST API 处理它 我使用 falcon 作为后端 但不知道如何发布和接收数据 这就是我目前发送文件的方式 img open img png rb r requests post http localhost 8
  • jQuery:全局异常处理程序[重复]

    这个问题在这里已经有答案了 可能的重复 JavaScript 异常处理 https stackoverflow com questions 205688 javascript exception handling 我有一个 Web 应用程序
  • 在 Windows 10 上使用 WinAPI SetWindowsHookExA 的 Python

    我正在尝试在 Windows 10 系统中使用 SetWindowsHookExA 在 python 中进行挂钩 我已经有了工作代码并且正确连接了 但我无法正确地将响应转换为密钥 我收到了 12 位数字的回复 但我在文档中没有看到任何有关它
  • PyAudio 响应式录音

    我在 PyAudio 网站上看到了用于录制固定长度录音的录音教程 但我想知道如何对非固定长度录音做同样的事情 基本上 我想创建按钮来开始和结束录制 但我还没有找到任何关于此事的信息 有什么想法吗 我不是在寻找替代库吗 最好是使用非阻塞的记录
  • 将基于Symfony 2.0的项目更新为Symfony 2.2

    我正在尝试将我用 Symfony 2 0 编写的项目更新为 Symfony 2 2 将源代码移至 2 2 项目结束config yml and security yml不兼容 有没有办法将 Symfony 2 0 项目正确迁移到 Symfo
  • OptaPlanner 是否支持连续变量的优化和约束?

    我正在阅读文档中矛盾的内容 一方面 这段话似乎表明连续计划变量是可能的 规划值范围是一个可能的规划值的集合 规划变量 该集合可以是离散的 例如第 1 2 3 行 或 4 或连续 例如 0 0 和 1 0 之间的任何双精度值 另一方面 在定义
  • 禁用 IE 中的滚动条[重复]

    这个问题在这里已经有答案了 可能的重复 禁用浏览器垂直和水平滚动条 https stackoverflow com questions 242608 disable browsers vertical and horizontal scro
  • 在 D2010 中可以做类似 XE2 LiveBindings 的事情吗?

    这是事实还是它使用了一些仅在 XE2 中可用的编译器技术 我只想将 TEdit Text 属性绑定 双向 到在代码中返回字符串的对象函数 我不需要设计器组件或表达式求值器 Thanks 我想你可以尝试Delphi魔法库 http code
  • 在 HTML 中放置 SVG 内容的最佳方法

    根据我的研究 我了解到可以通过三种方法将 svg 文件放入 HTML 中 using embed using object using iframe 我已经在测试设备上对这三个方法进行了实验 django 内置开发服务器 在 Firefox
  • Pandas 索引查看与复制

    我有一个包含几列的数据框 随后 添加了一个标题为 Active 的列 如果 Volume 列包含大于 0 的值 我需要将 Active 设置为 1 这是我如何尝试的一个简单示例 import pandas as pd active df p
  • 将 pandas.DataFrame 的 NaN 值替换为列表中的值

    在使用该库的 python 脚本中pandas 我有一个数据集 假设有 100 行 其中包含 36 个特征 X NaN值 以及大小为 36 的列表 我想用列表中的 36 个值替换 X 列的所有 36 个缺失值 这可能是一个愚蠢的问题 但我浏
  • PHP:将 64 位整数转换为字符串

    我正在尝试在字符串变量中使用硬编码的 64 位整数 简化我想做这样的事情 i 76561197961384956 s i i 这应该导致s being i 76561197961384956 这显然不起作用 因为 PHP 将大整数转换为浮点
  • scrapy - 项目加载器 - 默认处理器

    我是 python 和 scrapy 的新手 所以我提前对可能愚蠢的问题表示歉意 我对默认项目加载器的处理器有一些麻烦 以及相关问题 我使用 default input processor 变量使用 TakeFirst 处理器从列表中提取第
  • 将当前用户与 ActiveDirectory DirectoryEntry 相匹配

    我的场景 A 客户端应用程序 Net Core WPF 应该以某种方式找出当前用户的身份 例如使用System Security Principal WindowsIdentity GetCurrent and 使用 REST 服务器应用程
  • R 计算具有奇点的 lm 模型的鲁棒标准误差 (vcovHC)

    在 R 中 当某些系数因奇点而被丢弃时 如何使用 vcovHC 计算稳健的标准误差 标准 lm 函数似乎可以很好地计算实际估计的所有系数的正常标准误差 但 vcovHC 会抛出错误 面包中的错误 肉 不合格的参数 我使用的实际数据有点复杂
  • armv5 交叉编译节点的库兼容性

    我尝试交叉编译node https github com joyent node对于我的 QNAP armv5te 机器 在我的 Ubuntu 14 04 Desktop x64 上 QNAP App center 中存在节点 QPKG 但
  • 替换数组中的值

    我正在使用 Mongodb C 官方驱动程序 我想用其他值更改数组中的特定值 该数组包含值列表 例如 id id1 values 23 78 20 我想用 25 代替 23 我知道一个答案是否正确 首先我拉那个元素 然后推其他元素 但问题是
  • NestedScrollView 在 Recyclerview 调整大小时滚动到顶部

    我有一个 NestedScrollView 其中包含一个 LinearLayout 和一个 RecyclerView 都在relativelayout内
  • TWebBrowser 可以在没有 Application.ProcessMessages 的 Delphi 线程中使用吗?

    我正在尝试使用 TWebBrowser 在 Delphi 服务器应用程序 XE2 中创建网页的屏幕截图 屏幕捕获是通过对我的服务器的 Web 服务调用启动的 因此为了保持可扩展性 我希望在不依赖关键部分或 Application Proce