我正在WindowsCE 6.0平台上开发。到目前为止,我已经拥有Windows CE Web服务器,ASP解释器& VBScript内置于我的CE平台并显示一些asp网页。
我想与在同一块板上运行的c ++应用程序交换数据。以前,我们曾经使用ISAPI扩展来打开内部套接字并来回传输数据,但从Web开发的角度来看,这是不切实际的。 ISAPI扩展必须包含在CE平台中,因此每次要修改Web表单中的昏迷时,重建平台意味着45分钟。
我知道我的选择有限。我听说过COM对象。我对它们一无所知(如何构建,如何将它们包含在平台中,或者使用我不知道如何生成的cslid注册它们,以及如何通过asp向他们讲话#s在Windows CE上非常有限的语言。例如,不支持服务器方法(仅包括Sever.CreateObject()
)Server.MapPath()
。(我知道这是无关的)。
我也环顾四周是否可以直接从VBScript打开一个套接字(我没有.net,只有asp经典版)并且没有发现任何与我想做的事情有关的事情。
有什么建议吗?
答案 0 :(得分:1)
在应用程序中实现COM接口是最简单的方法。 我没有说这很容易,我说这是最容易的,记住这一点! 使用ATL,您可以从COM中包装大部分样板文件,并让页面直接调用应用程序中的方法。 您应该将接口限制为与IDispach兼容的数据类型(因此没有结构等,您必须将它们包装在COM对象中),并且调试将是一种噩梦,必须检查页面和C ++代码中的问题,但这是可行的。 并且您不必强制将ISAPI dll保留在映像中,您可以从大容量存储中加载它,然后您需要的是在需要测试新版本时终止并重新启动Web服务器。您还可以将调试器附加到HTTP服务器进程(service.exe)并进行调试。在第一个调用的函数中调用DebugBreak通常允许您加载调试符号并在代码中执行。
答案 1 :(得分:0)
周六我能够回收'我的这个dll,如上所述,从大容量存储器中运行它,并让它推动'数据到我的应用程序。我可以看到由'&'分隔的帖子。字段
我所做的是这样引用它:
开始......但是网站和dll在一次使用后都会挂起(可能正在等待我不能正确做的回报。我是这个网络世界的新手(是的,我知道,它& #39; s old)并且对此一无所知......更多的是C ++ /嵌入式的人:)
答案 2 :(得分:0)
Html5还实现了一项名为“Web sockett'它提供专门用于基于Web的应用程序的双向通信。讨论如下: