我的代码中包含以下行:
var ScreenRecorder = new ActiveXObject('CCScreenRecorder.ScreenRecorder');
问题是我有2个条目
(每个版本一个,不要问我为什么-这是我需要处理的事实),
所以我想从GUID创建
ActiveXObject
。我试着做:
document.createElement('<OBJ' + 'ECT ID="ScreenRecorderWrapper" CLA' + 'SSID="CL' + 'SID:37CCF998-3BB7-' + '4F8A-9D9F-EF391543E94A"></OB' + 'JECT>');
var ScreenRecorder = ScreenRecorderWrapper;
但是问题在于,只有在
ScreenRecorderWrapper
或其他某种操作之后才能定义SetTimeout
。我可以从它的GUID中获取
ActiveXObject
而不从它的名称中获取吗?就像是:
var ScreenRecorder = new ActiveXObject('37CCF668-3BB7-4F8A-9D9F-EF391543E94A');
最佳答案
ActiveXObject
需要一个ProgID,但是,您可以使用版本相关的ProgID,而不是版本无关的ProgID。
版本相关的ProgID通常在版本无关的ProgID后面附加一个版本号。
在这种情况下,版本无关的ProgID为'CCScreenRecorder.ScreenRecorder'
,而版本无关的ProgID将类似于'CCScreenRecorder.ScreenRecorder.1'
或'CCScreenRecorder.ScreenRecorder.2'
。
请注意,如果安装了错误的版本,则使用基于版本的ProgID可能会失败。您可能想要先尝试与版本相关的ProgID,然后回退到与版本无关的ProgID。