duyandong 2015-01-28 16:21
浏览 2529

MSScriptControl.ScriptControl 组件中的Run() 方法求助!!!

MSScriptControl.ScriptControl 组件中的Run() 方法求助!!!

问题描述:在.CS文件中利用Run方法调用JS脚本文件中的函数,返回值为NULL,请教大神们是啥原因啊?是因为Run方法的第一个函数名的参数不支持子函数么?该如何解决啊?

脚本文件jsfile.js 如下:
var JSEn = function (str) {
options = options || {};
this.log = options.log || false;
this.key = str;
};
JSEn.prototype.fun1 = function (str) {
return "aaa"+str;
};

C#代码中调用脚本文件中的 JSEn.prototype.fun1方法,代码如下
private string ExecuteScript(string strJsfile, string[] argc)
{
MSScriptControl.ScriptControl scriptControl = new MSScriptControl.ScriptControl();
scriptControl.UseSafeSubset = true;
scriptControl.Language = "JScript";

scriptControl.AddCode(strJsfile);
//调用过程如下
int ParamsLen = argc.Length;
object[] ParamsArg = new object[ParamsLen];
for (int i = 0; i < ParamsLen; i++)//参数赋值

{ ParamsArg[i] = argc[i]; }

try
{
//此处的result经调试发现返回值为null!!!?????求原因
object result = scriptControl.Run("JSEn.fun1", ParamsArg);
return result.ToString();
}
catch (Exception ex)
{
string str = ex.Message;
}

  • 写回答

0条回答

    报告相同问题?

    悬赏问题

    • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
    • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
    • ¥20 有关区间dp的问题求解
    • ¥15 多电路系统共用电源的串扰问题
    • ¥15 slam rangenet++配置
    • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
    • ¥15 ubuntu子系统密码忘记
    • ¥15 保护模式-系统加载-段寄存器
    • ¥15 电脑桌面设定一个区域禁止鼠标操作
    • ¥15 求NPF226060磁芯的详细资料