有人知道我如何在C代码中运行VBS代码吗?
我不是说运行一个外部文件,而是说在与C 相同的代码中运行一个vbs CODE
就像Javascript和HTML结合在一起一样,我想用C和VBS 来实现它
回复评论
-
有两种方法可以为应用程序添加宏支持。向Microsoft支付费用并免费许可VBA或使用VBScript/JScript。
-
C需要大量的管道代码。例如,C++/VB6中的
.
是C中的几行代码,因为它不知道COM。但要编写C,必须选择使用C++或C#,并限制自己使用内置功能,然后用很多行代码复制相同的功能。互联网上有很多20年前的源代码展示了如何做到这一点。
VBScript是一种活动脚本语言。看见https://en.wikipedia.org/wiki/Active_Scripting.这允许COM编程语言将VBS/JS宏添加到其程序中。
活动脚本允许您将宏语言添加到程序中。
你当然可以实现IActiveScripting,互联网上有很多C代码。
只有对于32位程序,才有一个MSScript.ocx控件,它可以在一个简单的控件中实现IActiveScript和相关接口。
VBScript代码(我不是C程序员,但在C#和C++中[但不是C],它和VBScript一样简单(,因为它们都可以轻松地执行COM。
set ScriptControl1 = wscript.createObject("MSScriptControl.ScriptControl",SC)
With ScriptControl1
.Language = "VBScript"
.UseSafeSubset = False
.AllowUI = True
.AddCode Script
End With
该文档在System32中以msscript.chm的形式存在,但在Win 10中已不存在。
下面是一些C#示例代码注意仅限32位。https://learn.microsoft.com/en-us/troubleshoot/developer/visualstudio/cpp/libraries/call-script-control-run-method