C#  快速编译附加到进程(Attach to Process)的方法

 

说起附加到进程的作用,csdn上的网友形容非常形象,就像我要去一个地方,我不需要从起点开始走到这个地方,只需要在中途搭上一辆到那个地方的公共汽车.

即如果修改一个很大的项目,我不必重新编译所有程序,只需要对该页面附加到进程,然后浏览该页面即可进行调试。

 

适用于避免每次对大的项目重新编译, 或者编译权限有限,只能调试部分页面的情况下面主要介绍如果实现附加到进程:

 

1.    建立虚拟目录:

首先生成网站,然后发布. (如果本身就是网站类型,不需要在点击发布网站)

 

 

发布的时候在编译目录上点右键,选择sharing and secrity…

然后选择Web Sharing,指定别名和访问类型。

(注意,虚拟目录的路径一定要是编译目录,否则即使附加到进程也不能设置断点;

 另外如果指定了编译目录作为虚拟目录,是不会产生dll文件的。这两点细节很多网上的文章都没有介绍,但是如果忽略,就无法使用附加到进程. )

 

 


 

2.    满足一下Checkpoint:

CKPT1:  虚拟目录的Framework的版本要与当前编译器的版本一致:

 

 

 

CKPT2 : 虚拟目录的路径应该与编译目录一致。(如下的Local Path应该与编译一样,否则断点无效.  

 

 

3.    使用附加到进程:

附加到进程之前,先在IIS中对应的虚拟目录上点右键选择browse, 此时后台编译进程打开,

这样我们就可以在进程中找到对应的ASP后台程序: aspnet_wp.exe . (vs2005是用这个程序的,20082010可能不是这个名字.)

 

然后就是msdn上的标准sop了,如何操作---附加到进程

 

OP:   调试 -à 附加到进程 -à 选择aspnet_wp.exe进程,点附加

(如果没有这个进程,可以点击刷新,如果还没有,检查虚拟目录,点右键browse.唤醒asp后台进程。)

 

如果有任何问题,或者描述有误,请回复。