问题标签 [comobject]
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.
windows - PowerShell,对象 = 启动进程?
您好我想启动没有扩展的 Internet Explorer 并控制它。(导航到其他页面,单击按钮等)
当我使用命令:“Start iexplore.exe -ArgumentList -extoff”时,我有没有扩展名的 IExplore,但没有对象。我需要该对象导航到不同的页面并单击按钮。“$ie = Start iexplore.exe -ArgumentList -extoff”不能使用命令“Start X”
下面的代码创建了一个 Com 对象,我想要的一切都是可能的,没有“Extensions = off”
- $ie = New-Object -ComObject InternetExplorer.Application
- $ie.Navigate("http://www.stackoverflow.com")
- $ie.Navigate("www.Navigate to a other Page.com")
- $ie.Document.getElementById("ButtonID")|foreach{
- $_.Click()
- }
visual-studio-2010 - VS2010不会显示项目属性(“底层RCW”)?
只有有时(我还没有注意到模式),当我右键单击项目(各种类型的项目)并选择“特性”:
我通常可以在重新启动 VS2010 后查看项目页面。我正在使用 RTM 版本。
什么会导致此错误?
powershell - 从 Com 对象获取进程 ID
可以从这个新的 Com 对象 ($ie) 中获取进程 ID 吗?
internet-explorer - InternetExplorer Com 对象、getElementById、getElementsByName 和 getElementsByTagName
我想用 PowerShell 创建一个 webtest。目前,当我创建新的日历条目时,我遇到了 SharePoint 文本框的问题。该字段的属性是:
现在您可以看到,我没有可以使用的固定 ID。
是否可以搜索“Titel”一词并获得ID?
(标题=标题,因为它是德语;-))
以下代码不起作用。
Internet Explorer 中的源代码:
php - 如何从 PHP 中的 COM 对象返回的多维变量数组中读取?
我正在使用一个返回多维 VARIANT 数组 (vt_array) 的 COM 对象,并且我正在尝试从数组中读取值。
当我使用print_r($mdArray)
它时显示variant Object
. (variant_get_type($mdArray)
返回8204
。)
我尝试使用foreach ($mdArray as $oneArray)
,但收到消息:
警告:Loader::getfields() [loader.getfields]:只能处理 C:\Inetpub\wwwroot\root\script\fileloader.php 中第 135 行的一维变量数组(此数组有 2 个)致命错误:未捕获的异常在 C:\Inetpub\wwwroot\root\script\fileloader.php:135 中带有消息“类型变体的对象未创建迭代器”的“异常”堆栈跟踪:#0 C:\Inetpub\wwwroot\root\script\fileloader .php(135): Loader::getfields() #1 C:\Inetpub\wwwroot\root\testloader.php(21): Loader->getfields() #2 {main} 在 C:\Inetpub\wwwroot\第 135 行的 root\script\fileloader.php
(foreach 循环在第 135 行)
我能得到的关于数组的唯一信息是使用count($mdArray)
which returns 8
。
如果这里的任何人有任何阅读多维 VARIANT 数组的经验,请告诉我如何做到这一点。
activex - 调用 IDispatch::Invoke 时 IE9 RC 崩溃
我有一个在 IE6、7、8 和9 Beta上运行的工作代码,但在 IE9 RC 上崩溃。我可以看到网页正在成功使用 ActiveX 的界面,但是当我尝试从 ActiveX 调用 IDispatch::Invoke 时,ActiveX 崩溃了。
我的应用程序由 CHtmlView(IE 容器)、网页(GUI)和 ActiveX(应用程序本身)构成,我看到网页成功使用了 ActiveX 的界面,但是当我尝试将数据发送回网页时,我崩溃了。
调试代码后(vs2005 c++)我发现所有的IDispatch函数都会导致崩溃,但是这种行为只在RC版本中重现,我们的产品已经运行了大约3年没有问题,现在每个升级到RC的客户端不能再使用我们的产品了。
是否有任何变化会导致这种行为?根据在线文档,我找不到任何东西。谢谢。
c# - COM 协同对象和接口 C#
我对此完全陌生,正在关注 msdn 上的教程:http: //msdn.microsoft.com/en-us/library/aa645736 (v=vs.71).aspx#vcwlkcominteroppart1cclienttutorialanchor2
我的问题是为什么我们使用 COM 接口和COM CoClasses?实例化 COM CoClass 的实例似乎很奇怪,实例化一个新对象,它是旧对象但被转换为 COM 接口。
我真的只是想掌握这里的意识形态......任何帮助都是有用的。
c# - InternetExplorer 被设置为 __ComObject 而不是 SHDocVw.InternetExplorer
我在 SHDocVw.dll 中遇到 InternetExplorer 问题。我也引用了 mshtml.tlb (在谷歌搜索时,我确实阅读了 1 条评论说我应该引用 mshtml.dll ,但这不能在Microsoft Visual Studio Express中完成,我不知道这是多么真实)。这是一个对我不起作用的最基本形式的小功能:
问题是当我创建 IEObj 实例时,它被认为是 typeSystem.__ComObject
而不是SHDocVw.InternetExplorer
,并且所有子部分也是 type System.__ComObject
。当我尝试以下任何陈述时...
...我不断收到相同的错误消息:
无法将类型 'System.__ComObject' 隐式转换为 'System.Windows.Forms.HtmlElement' (显然转换为的类型不同
IEObj.Document
)。
我是 c# 的新手(来自 VBA,所以我熟悉编程),但是在 VBA 中,等效项可以完美地工作,而无需以任何方式进行转换。
是我做错了什么吗?如果这是我创建的对象,以下是(大致)我用来测试函数的代码:
我真正想做的就是锁定各种元素,以便我可以在文本框中输入文本、单击按钮等。我还需要能够使用 Document 变量(如Document.Body.InnerHtml等)。整个项目就是一堆函数,包含在一个DLL中,供其他项目引用。
c# - 如何从 webbrowser 控件中获取 onclick 中的实际 JavaScript 值?
我正在寻找一种方法来获取在 onclick 中定义的 JavaScript 代码。我正在使用 .NET 2.0 C# Visual Studio 2005。
例子:
我的目标是获取字符串"window.location.href='someURL'"。
设想:
用户在 WebBrowser 控件内单击网页元素,例如上面显示的标记。然后点击的标签被引用到 H tmlElement object
。
然后在我调用的 WebBrowser 控件HtmlElement object's getAttribute("onclick")
中,它只给了我“ System.__ComObject”。
我已经搜索了如何处理它然后发现它可以被铸造然后获得价值。
输出:
如图所示,span.onclick 仍然给我 System.__ComObject,我做错了什么?
在为什么 HtmlElement 的 GetAttribute() 方法返回“mshtml.HTMLInputElementClass”而不是属性的值? 这家伙说它在他的情况下有效,我已经按照它,但我的有点不起作用......
更新
研究,研究……
我可以将引用 VisualBasic.dll 添加到我的 C# 项目中,然后调用该方法来找出这个 System.__ComObject 到底是谁。
输出:
看起来这是一个 JScript 类型......我怎样才能访问这个对象?
更多详情
以上描述基于我目前的项目。该项目是创建类似 Selenium IDE 的东西。它改为使用 WebBrowser 控件。
Selenium IDE 创建了 3 种不同的东西来记录 Web 文档中的元素。
例如,
Selenium IDE 识别页面加载,因此它在"click"
和之间更改 actionType "clickAndWait"
。我的情况,我想让它变得简单。
如果我单击该元素并且如果它是anchor tag
或具有页面加载类型的 javascript,onclick=window.location.href='blah'
那么我想将 actionType 设置为"clickAndWait"
.
com - Regsvr32 奇怪的行为 => Regsvr32 没有给出任何成功或失败的信息
我有一个 directShow 过滤器:MyFilter.ax
当我尝试使用 Regsvr32 实用程序注册 MyFilter.ax 时,它不会给出错误或任何消息(成功或失败)。但过滤器未注册。
Regsvr32 实用程序适用于我的其他过滤器。
为什么 Regsvr32 deoes 没有给出任何成功或失败消息?如何调试我的 Regsvr32 失败-成功?注册directshow过滤器的任何替代实用程序可能会提供有意义的消息?
最好的祝愿
更新:
我在虚拟机上安装干净的 win7 操作系统。然后尝试注册。在没有来自 regsvr32 的消息响应的情况下再次失败。
但是然后在虚拟机上再次安装一个干净的win7操作系统。然后进行所有更新。在我进行更新 regsvr32 工作并安装我的过滤器之后....我不知道是什么原因导致 regsvr32 失败以及什么样的更新可以修复它。还是真的是更新问题...