自升级到2008年以来,我和这里的很多人都注意到随机VS将不再介入代码或跳过断点。它进入了调试变成真正苦差事的阶段。我们正在运行SP1,但也注意到2008年基本问题。
在参考Robert的问题时:我们在Windows服务中托管WCF和Remoting服务。本质上来自客户端的调用(通常是windows exe)将最终出现在服务本身和我们的代码中的一个线程中(而不是远程处理或WCF基础结构)。一旦进入我们的代码,断点就会出现这种情况。
我们在这里进行的大部分调试都是在服务代码中,所以ATTACH要处理得非常宝贵,有时候不可能达到所需的状态,除非在进程启动后附加到进程。它发生在开发人员身上,例如resharper和运行vanilla VS的人。
在谷歌上看并没有多大帮助。
的问候, 普里特
Spudlo的回答对我们来说非常有用。谢谢。请从MSDN
下载修复程序答案 0 :(得分:2)
是的,当我忘记从RELEASE切换到DEBUG时。 ;)
在我意识到自己的愚蠢之前,总是让我发疯。
答案 1 :(得分:2)
要检查的一些事项:
也许作为一种解决方法可以从VS内部启动服务。如果您将应用程序更改为控制台应用程序,并添加一个调用OnStart方法的main方法(就像Windows服务一样)。您仍然可以将应用程序安装为Windows服务,也可以直接从VS运行:
public static void Main(string[] args)
{
if (Environment.UserInteractive)
{
Console.WriteLine("Starting service...");
Service1 svc = new Service1();
svc.OnStart(args);
Console.WriteLine("Started");
Console.WriteLine("");
Console.WriteLine("Press any key to stop");
Console.Read();
Console.WriteLine("Stopping...");
svc.OnStop();
Console.WriteLine("Stopped, Press any key to exit");
Console.Read();
}
else
{
ServiceBase.Run(new Service1());
}
}
答案 2 :(得分:2)
Here是一篇博文,附有补丁的链接。
答案 3 :(得分:1)
我们看到了SP1的BP问题。我们向Conenct(https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=363453)报告了它,MS已经发送了一个DLL来修复它(似乎工作)。我希望MS能尽快发布补丁。
由于您没有SP1的问题,它可能会有所帮助