偶用ISAPI编译的websnap在服务器上需用regsvr编译
结果那个服务器的提供商说要和我签协议
说是万一摊了偶就要赔~~
晕死,就改用cgi编译了(生成的不是.cgi而是.exe)
可是每次运行都提示要下载
另外从asp中传递的参数也不能在该exe的内部传递了~~现在问题归纳一下
1.用ISAPI编译的dll能不用注册就最好,但现在看起来不可能了,如果大家有好办法,谢谢提供~~
2.用cgi编译的exe怎么样才能不提示"下载"?
3.参数如何在该exe文件中传递?谢谢大家,帮帮我吧~

解决方案 »

  1.   

    难道没人用CGI编译过吗?
    郁闷~~
      

  2.   

    没听说过 ISAPI 要注册,只要将 .dll 文件及所有相关的 .html 等资源放到站点的根目录就行啦,或者就放到一个虚拟目录也行啊。http://主机名/YourDLL.dll

    http://主机名/虚拟目录名/YourDLL.dll
    就可以浏览了
      

  3.   

    hiflower(花):
      谢谢大侠!!
      但是,在服务器上运行dll不用注册?就算是我自己的机子做服务器也先得注册才行啊~~
      不注册就直接把这个dll下载回来了啊  另,现在cgi可以运行了,但是如果安装了flashget的话就会提示下载,因为flashget中把.exe自动关联成下载文件了.有什么方法可以跳过它,手改当然可以,但不实际啊~~
      还有当初我是用web app debugger executbule做的web snap,再用web services中的ISAPI包含它的,编译的dll可以传递从asp页中传来的变量,但是保持web snap不变,用web services中的CGI stand-alone executable包含的话该变量在exe内部就丢失了,是不是websnap也要用CGI stand-alone executable来包含?
      

  4.   

    你用的是什么 Web 服务器,它是否支持 ISAPI 啊?
    如果是 IIS ,在 Internet 服务管理器中允许脚本和可执行程序就行了。你下面所说的 WebService 部分我不太懂
      

  5.   

    晕,不可能啊
    直接在 Internet 服务管理器中允许脚本和可执行程序,然后运行
    则提示:该页无法显示 
    您要访问的页有问题,无法显示该页。 请尝试以下操作:打开 www.nbpc.org.cn 主页,然后查找指向您感兴趣信息的链接。 
    单击刷新按钮,或以后再试。单击搜索,寻找 Internet 上的信息。 
    也可查看相关站点列表。 HTTP 500 - 内部服务器错误 
    Internet Explorer  
      

  6.   

    那可能要http://主机名/YourDLL.dll/pagename也有可能你的 DLL 有问题,找不到页面
      

  7.   

    dll应该没问题,因为如果在自己机子上做服务器就可以的(不过要注册dll)
    但是实际运用不可能啊,为了这软件,自己做服务器?所以现在用cgi编译
    大家谁有经验啊,帮帮我~~
      

  8.   

    在cgi中是不是不能用session?
    程序中我无法传递变量了~
    如:
    webcontext.session.Values['SSXQ']:='aaaaaaaaaaaaaaaa'
    那么只能在该页出现值aaaaaaaaaaaaa
    换页后这个值就被清了,再跳回来也没有了
    我在cgi中用了SessionsService
    如果只能在该页使用,session和普通变量不就没区别了吗?
    求教!
      

  9.   

    直接用dll的是不需要注册的,
    你把.exe改为.cgi就不会再提示下载拉,你试试!
      

  10.   

    dll是否只要在IIS下设置允许脚本和可执行程序障碍就可以运行了?
    和它本身是否连接数据库是否有关?
    我现在编的dll在自己机子上可以运行
    但不能运行于其他的机子
    这是什么原因啊?
      

  11.   

    ado
    直接用connect string连的啊~
      

  12.   

    是不是建立的 ODBC 数据源呢?如果是,应该要用 System DSN
      

  13.   

    谢谢指点!
    今天早上写了两个dll
    一个在ado的数据库的连接中用了指定的目录C:/test/data.mdb
    另一个用了直接用data.mdb
    结果是第一个dll能打开
    第二个不行
    所以在想,是不是ado数据库连接需要绝对路径?
    如果是的话, 怎么写连接语句呢?
      

  14.   

    直接指定 mdb 文件的话,当然要用绝对路径了。
    如果在当前目录下,我不确定是否要用绝对路径。
      

  15.   

    用了相对路径,就会出现HTTP 500 - 内部服务器错误
    如果改成绝对路径的话,就可以正确显示
    难道用ado连接不可以吗?
    可以的话,该怎样写这个路径呢?
      

  16.   

    现在问题得到了部分解决:
    我用asp页得到了服务器存放dll文件的绝对路径
    然后用ado连接,炮制成dll后
    一切ok!可是该dll我现在怎么都删不掉,替不下了,难道非要联系服务器的管理人员吗?
    郁闷~~
    还有现在采用的方法很旁门左道啊
    不知道有没有更好的解决方法?
      

  17.   

    因为这个 DLL 已经在使用中,要删掉这个 DLL,必须停止 WWW 服务