我想調試從修改的SQLite代碼創建的SQLite數據庫的實例。當用戶從數據庫中選擇一些數據時,我想逐步瀏覽SQLite源代碼,看看SQLite的邏輯是什麼。這樣做的目的是我想看看我是否可以將SELECT觸發器添加到SQLite源代碼中,並使用我的新類型的觸發器創建SQLite數據庫。目前SQLite只支持UPDATE觸發器,INSERT & DELETE。如何使用Visual Studio調試SQLite源代碼
到目前爲止,我已經從http://www.sqlite.org/index.html下載了「合併」SQLite源代碼,並設法在Visual Studio 2010中構建它。但是我不知道如何調試它。我試圖創建一個測試C#的Web應用程序,使用SQLite項目作爲項目參考 - 但它不會讓我把它作爲參考添加它(拋出一個錯誤,說「引用'mySQLiteproj'無法添加」這是SOOO有用)。我目前的結構只是一個空的C項目,其中包含sqlite3.c和sqlite3.h文件。
SQLite代碼是用C編寫的,我不熟悉,所以也許我會完全走錯了路徑?我來自C#背景,所以請不要建議我使用Visual Studio廢棄,而改用記事本或其他一些「硬核」IDE :)
簡而言之:如何調試SQLite源代碼?
編輯:我已經按照Sergey的建議將shell.c文件添加到項目中,現在可以進行「排序」調試。它會在shell.c中達到斷點,但不會在sqlite3.c中。我可以從shell.c中調用sqlite3.c作爲函數調用,但是這些行似乎與正在運行的代碼不匹配。一半的線條是灰色的(通過resharper也許?),並且沒有自動監視變量或突出顯示代碼當前正在打破哪一行。
我在這裏創建了基於cmake的SQLite合併構建https://github.com/snikulov/sqlite.cmake.build,以便您可以生成Visual Studio解決方案,將其構建爲調試目標,然後進行調試。希望它會有用。 –