C#前后台调用JS,VBS 弱弱问题

yangyugw 2009-07-15 05:53:33
我有一个Activex组件,该组件将部署于客户端,用于与客户端安装的设备进行通讯。

我目前做法是用VBS调用该Activex组件,基本上可以实现功能,但我有些疑问想在这里和各位咨询下
Activex组件有三个函数,三个函数都具有多个in参数和多个out参数

1、没有采用js调用Activex的原因?
js是不是只能针对一个out参数,请高人指点一二!

2、前后后台代码互相调用的问题。
操作流如下,C#后台代码处理数据,调用Activex函数将数据写入设备中,Activex通过out参数告知成功失败。
成功后,C#后台将该条处理数据记录存入数据库。
目前难点在于 VBS无法准确的将out参数返回给后台。
我本来通过组件隐藏域将结果返回,VBS将结果赋值给组件隐藏域,然后后台代码通过该组件获得结果。但发现,必须在后台提交后才可以获得该隐藏域的值,在一个过程中,该组件的值并没有发生变化。

前台代码

<script language="VBscript">
Function sdWriteCardp(UserID,BuyPower,sData,PtcType,FlagInfo)
dim ReCode
MsgBox Cstr(UserID)
MsgBox BuyPower
MsgBox sData
MsgBox PtcType
MsgBox FlagInfo

SDUSB.WriteCard FlagInfo, BuyPower, UserID, PtcType ,sData , ReCode
document.getElementById("iReCode").value=ReCode;

End Function
</script>

隐藏域定义
<input type="hidden" id="iReCode" name="iReCode" value=""> 



后台代码

private void Button6_Click(object sender, System.EventArgs e) 
{
int FlagInfo =0;
double BuyPower=29.68;
string UserID = "0000000101";
string sData ="123456";
int PtcType =1;
string ss=" <script language='VBscript'> Call sdWriteCardp(\""+UserID+"\","+BuyPower.ToString()+
",\""+sData+"\","+PtcType.ToString()+","+FlagInfo.ToString()+") <" + "/script>";
//调用前台代码

Page.RegisterStartupScript("ccsdWriteCard",ss);

if(this.iReCode.value="0")//此处无法正确拿到本次调用VBS iReCode

{
//成功
}

}



麻烦各位就2个问题帮忙解答一下。

...全文
194 4 打赏 收藏 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
toury 2009-07-17
  • 打赏
  • 举报
回复
哈哈~楼主兄弟客气,俺来JF~~:))
  • 打赏
  • 举报
回复
Activex组件 不太懂。
猜测 在后台改变隐藏域,页面还没生成给用户,在客户端的Activex组件只能拿到上次的隐藏域。
yangyugw 2009-07-16
  • 打赏
  • 举报
回复
好冷清啊,都去度假了?
源码直接下载地址: https://pan.quark.cn/s/a4b39357ea24 【FAST FWR310 无线路由更新程序】是一个专门为FAST FWR310型号无线路由设备设计的固件升级方案,其主要目的在于改善设备的工作表现、纠正已知的系统缺陷或引入全新的操作特性。对无线路由器进行固件更新,实质上是指替换或升级其核心操作系统(即固件),从而使其运行状态得到进一步优化。 在无线路由器的持续使用阶段,用户有时会遭遇若干操作难题,例如网络连接的频繁中断、数据传输速率不高、无线信号覆盖范围有限等情况。针对此类挑战,通过安装新的固件(即刷机包),能够有效应对上述问题,因为新固件或许已经针对这些普遍存在的问题进行了优化处理。不仅如此,固件升级还能开启一些隐藏的功能选项,或者兼容第三方固件,例如OpenWRT,从而让用户能够进行更深入的系统自定义配置及管理。 FWR310 V5.0升级软件20160301是该刷机包的明确版本标识,显示出这是针对FAST FWR310路由器推出的第五代固件,并且发布日期为2016年3月1日。此版本的更新内容可能涵盖以下几个方面: 1. 运行效能的调优:借助于对路由器处理流程与内存分配的改善,能够加快数据交换速率,减少响应时间,从而全面提升网络的工作效能。 2. 安全防护的强化:更新内容中可能融入了对新兴网络安全风险的防御机制,用以保障用户的资料安全。 3. 互操作性的扩展:可能增强了与更多设备及协议的适配能力,比如最新的无线通信标准或设备连接模式。 4. 运行稳定性的提升:修复了可能引发路由器系统崩溃或意外重启的已知故障,延长了设备的稳定运行周期。 5. 新特性集成:或许增添了提升用户体验的功能,例如远程操作控制、家长监管功能、服务质...

111,128

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧