ASP中DLL的调试环境配置全攻略
发布时间:2007-09-27 13:20:00
现在正在搞三层开发,用ASP和VB6.0,但是现在苦于没有找到合适的方法来调试自己写的DLL文件,效率相当低。
我用了几种方法:
1.在IIS中选择卸载,然后用VB重新编译,覆盖掉原来的DLL
2.在IIS中选择一个你调试的站点,停止,然后编译覆盖,然后启动,再在IE中刷新页面。
3.在命令行执行Regsvr32.exe -u 文件名 然后编译覆盖 刷新
但是上面的方法不总是凑效,我用Frontpage做ASp页面的时候没有什么问题,但使用InterDev的时候总是报告DLL文件被锁定,不能覆盖的错误。有的时候把InterDev关掉(或者仅仅是关掉里面所有正在编辑的文件),也能凑效,但是不总是这样。
我想用InterDev做开发,比较方便,但是找不到更好的方法。
这个问题困扰我好久了,我想大家做组件开发的都有这个迷茫
我今天下午试了一下下面的方法不知道会不会让大家笑话,但是我真的解决了问题了
并且今天一下午都自我感觉良好, 不过我用的是.NET的开发环境。
具体如下:
1.安装.NET,当然这个对系统的资源耗费很大,安装以后普通的机子会运行得很慢,如果你的自愿比较紧张还是放弃这个方法吧。(后来我发现在frontpage下和interdev下也可以实现,哈哈。不要埋怨,因为我的话而装了一个.net却发现没有多少用处,但是我用过之后却是爱上他了。)
2.建立一个存放DLL的文件夹。然后我们的最“出色”的地方体现出来了:在这个文件夹下建立若干个空的子文件夹命名从01开始到你希望的数值为止。
3.启动IIS管理器
4.打开VB6你的工程
5.现在如果你要调试的话可以直接编译啦,然后任意指定一个第二步建立的文件夹,我想还是从01开始吧。
你刷新一下你调试用的ASP页面,看见了吗?内容已经是你写的新的DLL文件的了。以上只是开机后第一次调试。我在调试的过程中发现了不少错误,我总是这么大意吗?呵呵,但愿你不是这样的:)
现在我需要修改DLL了,修改完成后重新编译,你发现你不能覆盖刚才的DLL了,因为你已经在页面里面调用了这个组件,他已经被放进内存,写保护锁定了。你需要在IIS管理器里面把你的站点停掉.如果你用的是.net,你会发现这样是可行的,但是其他的开发环境不一定和你想的一样,现在你第二步建立的那些个文件夹们就会管用了,找其中的一个文件夹(该是02了...),把新的DLL放在这里。然后启动站点(不要让他重启,太慢了,以上步骤最简洁的方法就是在IIS选中你的站点,按最有上角的█,然后▼)(我没有找到▼,你只能把▼顺时针旋转30度读了^_^)
怎么样?
问题解决了吧?
我推荐使用.net,因为使用它,你不需要和interdev一样进行reference,只要直接在其中写扩展名是ASP的页面,然后代码中每一个对象都用server.createobject("")的方法得到,他就会自动显示你方才编译过的最新的DLL中的类的方法和属性了。
如果你不想使用的codeinsight话我想frontpage也是很好的工具。
我的方法是不是很笨啊?
我不用VB.net或者是C#是因为我现在的工作是封装代码而不是重新一个工程
鉴于vbscript和.net中语法的差异,我还是选择这个笨笨的方法了,并且自己认为VB写DLL也许性能会更好一些,不是吗?
猜你喜欢
- js关于 byval 与 byref 二者区别: byval 传递数值,实参和形参分处不同的内存单元,互不干扰! byref 传递地址,实参
- 功能说明: 滑动展开/收缩广告效果,可指定:广告完全展开时的停留时间,最大高度。兼容浏览器:IE5.0+、FF1.06+、Opera8.0+
- 主键的生成方式主要有三种: 一. 数据库自动生成 二. GUID 三. 开发创建 严格讲这三种产生方式有一定的交叉点,其定位方式将在下面进行
- 1.表达式操作符Table 1 算术操作符操作符 语法 含义+ a + b 相加 - a - b 相减 - - a
- 深底色风格的页面设计很受欢迎,它可以创造出别致优雅、极富创造力的效果。深底色设计适用于许多网站类型,但并非所有。这种风格应该在恰当的条件下使
- asp禁止站外盗链,站外提交方法、以及asp判断星期几方法.防盗链,主要通过判断上一页面来源是否是本站来实现的,不是本站的链接就
- 通过锁机制,可以实现多线程同时对某个表进行操作。如下图所示,在某个时刻,用户甲、用户乙、用户丙可能会同时或者先后(前面一个作业还没有完成)对
- BrowserPlus 到底是什么,又能做什么?BrowserPlus 是 Yahoo! 最近刚发布一个 Web 扩展的平台:终端用户需安装
- 仿google的asp分页代码index.asp(文件1)<%@LANGUAGE="VBSCRIPT" CODEP
- 以下是涉及到插入表格的查询的5种改进方法:1)使用LOAD DATA INFILE从文本下载数据这将比使用插入语句快20倍。2)使用带有多个
- 前几天,看到有人写了个superLink的东东,主要的做什么用呢?我们有时会给在大块元素加个window.location='htt
- 插入一条记录后,如何得到最新的自动增加ID?我们要用到SQL Server的@@IDENTITY。它能够记录下系统最近使用的一个IDENTI
- asp中我们可以利用ERR对象来判断sql语句执行是否成功:SQL="Insert INTO TABLE(F1,F2) value
- 方案:◆1、SELECT TOP PAGESIZE NEWSTITLEFORM NEWSINFO WHERE NEWSID NOT IN(S
- 一位资深的设计师曾经向我抱怨,说老板不仅让他做“设计”工作,还让他做“制作”工作,真是很烦。言下之意,“制作”还要一个资深设计师亲自上阵,未
- 方法1: X:\oracle\ora81\bin\wrap iname=XXX oname=XXX 方法2:9i在win2000下使用wra
- 本文总结了ASP初学者常犯的几个错误,希望对asp学习者有所帮助!1.记录集关闭之前再次打开:-----------------------
- 使用ajax获取服务器数据返回给客户端,出现中文乱码。在之前的一个ajax应用中指定codepage=936,将所有页面编码都指定为GB23
- 最近对动易CMS有个研究任务,具体研究什么,嘿嘿,保密。网络收集了九个常见的错误原因分析及解决方法错误提示: ADODB.Recordset
- 最近开始在项目中使用Quickwork For Asp,虽然该框架是自己独立完成的,不过功能没做过详细的总结,所以很多参数总是会弄错,毕竟鱼