intraweb用起来的确很爽,速度奇快无比,特别是对于我们这些只会Delphi的开发人员,在开发web程序时简直跟开发一般的应用程序没什么两样。但是我在用intraweb做项目时遇到两个关键性的难题;    背景:Intraweb有这么两种模式,Stand Alone编译后形成.exe(以下称.exe模式),ISAPI编译形成.dll(以下称.dll模式),这两种模式的程序存大很大的区别,在开发期为了方便调试程序我通是创建一个Stand Alone模式的工程,如此可以方便单步跟踪调试,当程序测试通过后再转换成ISAPI模式,将打包后的.dll程序放在IIS中就可以直接用IE访问,很方便的。    问题:1、IntraWeb开发的程序移植性等于0;          在多层结构的开发模式中,中间件用来处理业务逻辑因此需要连接后台数据库,那么为了方便移植,我们通常会在注册表中放置连接后台数据库的信息。好,问题出现了。当你用.exe驱动中间件时,读注册表一点问题没有。而用.dll模式驱动中间件时读注册返回空值。因为这个问题无法解决我们损失了很多东西;其一:Web程序Client端要用通过ebConnection连接Server端来实现面向无连接,而WebConnection的URL属性值会因为Server端的更换而更换,你必须将WebConnection.URL的值编译进去,如此程序的移植性没有了,因为每次Web程序更更换服务器都得重新编译一次用以将WebConnection.URL的值编译进去。中间件的连接后台数据库的连接信息因为不能读注册表也必须写死在程序中,总而言之,开发.dll的Intraweb程序移植性等于0;
   
    问题:2、IntraWeb中做报表困难重重;          Web程序的报表好象除了用插件没有什么好的方案,跟第一个问题类似;我用Delphi做ActiveX报表,在我的测试结果也出现了上述相同的结果,那就是在.exe模式下调用这个插件一点问题没有,而.dll模式使用相同的这个ActiveX插件就不行了,其结果是程序停上响应---死在那儿了。