如何使用远程调试器调试SharePoint EventReceiver?
我已经编写了一个SharePoint EventReceiver(Windows SharePoint Services 3.0),并希望使用在不同计算机上运行的Visual Studio 2008 SP1对其进行调试。我尝试了以下步骤:如何使用远程调试器调试SharePoint EventReceiver?,sharepoint,remote-debugging,event-receiver,Sharepoint,Remote Debugging,Event Receiver,我已经编写了一个SharePoint EventReceiver(Windows SharePoint Services 3.0),并希望使用在不同计算机上运行的Visual Studio 2008 SP1对其进行调试。我尝试了以下步骤: 安装事件接收器(我知道这是可行的,因为日志文件证明代码已执行) 在SharePoint服务器的GAC中注册我的事件接收器类库(在调试模式下构建) 正在SharePoint服务器上启动Visual Studio远程调试监视器 从本地计算机附加到SharePoi
- 安装事件接收器(我知道这是可行的,因为日志文件证明代码已执行)
- 在SharePoint服务器的GAC中注册我的事件接收器类库(在调试模式下构建)
- 正在SharePoint服务器上启动Visual Studio远程调试监视器
- 从本地计算机附加到SharePoint服务器上的进程w3wp.exe
Oliver Hanappi您可以尝试手动将程序集的调试(.pdb)文件复制到目标计算机上的c:\windows\assembly\MSIL\ASSEMBLYNAME\VERSION文件夹,然后重新启动IIS。您可以尝试手动复制程序集的调试(.pdb)文件保存到目标计算机上的c:\windows\assembly\MSIL\ASSEMBLYNAME\VERSION文件夹中,然后重新启动IIS。我今天早上遇到了这个问题。我得到了关于断点未被命中的相同错误。在我的例子中,这是因为我连接了错误的w3wp.exe进程。如果服务器上运行多个w3wp.exe进程,请确保连接到正确的进程进行调试 顺便说一句,您没有提到在步骤中的任何地方运行
iisreset
。将自定义事件接收程序集复制到GAC后,请确保运行iisreset
,以便web服务器接收您的更改
希望有帮助 我今天早上才遇到这个问题。我得到了关于断点未被命中的相同错误。在我的例子中,这是因为我连接了错误的w3wp.exe进程。如果服务器上运行多个w3wp.exe进程,请确保连接到正确的进程进行调试 顺便说一句,您没有提到在步骤中的任何地方运行
iisreset
。将自定义事件接收程序集复制到GAC后,请确保运行iisreset
,以便web服务器接收您的更改
希望有帮助 这个问题很老了,但我只想与大家分享以下命令,它将有助于选择正确的w3wp.exe进程 假设您已经部署并启用了事件接收器 在命令行上执行此命令
%windir%\system32\inetsrv\appcmd.exe list wp
这将打印PID,并指示其用于eg的位置
C:\Windows\system32>%windir%\system32\inetsrv\appcmd.exe list wp
WP "11632" (applicationPool:4a8cbf60637942ff9a2486d0e682ac54)
WP "16800" (applicationPool:SharePoint Central Administration v4)
WP "23648" (applicationPool:teams)
现在,您可以轻松地将VisualStudio调试器附加到正确的进程。
例如,对于SP站点团队我将附加到PID 23648这个问题非常古老,但我只想分享以下命令,这将有助于选择正确的w3wp.exe进程 假设您已经部署并启用了事件接收器 在命令行上执行此命令
%windir%\system32\inetsrv\appcmd.exe list wp
这将打印PID,并指示其用于eg的位置
C:\Windows\system32>%windir%\system32\inetsrv\appcmd.exe list wp
WP "11632" (applicationPool:4a8cbf60637942ff9a2486d0e682ac54)
WP "16800" (applicationPool:SharePoint Central Administration v4)
WP "23648" (applicationPool:teams)
现在,您可以轻松地将VisualStudio调试器附加到正确的进程。
例如,对于SP站点团队我将附加到PID 23648