2012-06-04 74 views
2

Visual Studio中的本地lighttpd的服務器上運行有通過Python的工具Visual Studio的大蟒蛇支持: http://pytools.codeplex.com/如何調試Python的使用Python的工具爲Visual Studio(PTVS)

在Visual Studio調試的Python代碼工作預期。我在本地Windows機器上設置了一個lighttpd服務器,並且我有python腳本作爲cgi腳本運行。我希望在從lighttpd運行時能夠在Visual Studio(在同一臺PC上運行)中進行調試。

我可以使用以下調試cgi腳本: http://winpdb.org 但我更喜歡Visual Studio。

根據這樣一個問題: How to debug a remote python application with (Python Tools for) Visual Studio?

這暗示有差不多的方式,但我沒有看到一個具體的方法來設置一個斷點,並有它在VS.調試

+0

如果這只是在您的本地計算機上執行Debug-> Attach to Process爲您工作?理論上講,你可以附加到cgi進程,設置斷點並開始調試。 –

+0

是的,Debug-> Attach確實有效。我在回答中列出了步驟。 – GravityWell

回答

4

想通了。這確實有用,而且一旦你完成了這些步驟,它就會運行得很好。

  • 延遲添加到Python源文件是這樣的:

    time.sleep(10) 
    

    此,如果你不使用FastCGI,如蟒蛇進程可能會開始之前你能長時間完成必要附加到它。我認爲這與FastCGI會有所不同,但我還沒有達到那個階段。

  • 在您的lighttpd(或apache?)服務器上運行的python文件中設置一個斷點。我測試了lighttpd。注意:如果您沒有將源文件添加到VS中的項目中,因此不設置斷點,您仍然可以調試,但是必須在文件中強制執行錯誤。我添加了一個「調試器」的工作。
  • 加載頁面在瀏覽器中,並允許延遲被打
  • 在VS:調試 - >附加到進程 - > pythonw.exe(延遲之前完成這個經過)

我加了一個將宏添加到Visual Studio IDE中,以自動執行附加到pythonw.exe的過程。如果有人感興趣,我會分享。

相關問題