解決方案使用者選項 (.Suo) 檔案
解決方案使用者選項 (.suo) 檔案包含每個使用者的解決方案選項。 此檔案不應存回原始程式碼控制件。
解決方案使用者選項 (.suo) 檔案是結構化記憶體或複合檔案,以二進位格式儲存。 您將使用者資訊儲存到數據流中,其名稱為金鑰,用來識別 .suo 檔案中的資訊。 解決方案使用者選項檔案可用來儲存使用者喜好設定,並在 Visual Studio 儲存方案時自動建立。
當環境開啟 .suo 檔案時,它會列舉目前載入的所有 VSPackage。 如果 VSPackage 實作 IVsPersistSolutionOpts 介面,則環境會在 VSPackage 上呼叫 LoadUserOptions 方法,要求其從 .suo 檔案載入其所有數據。
VSPackage 有責任知道它可能已寫入 .suo 檔案的數據流。 針對它寫入的每個數據流,VSPackage 會透過呼叫回環境 LoadPackageUserOpts ,以載入索引鍵所識別的特定數據流,也就是數據流的名稱。 然後,環境會回呼 VSPackage,以讀取該特定數據流,並傳遞數據流的名稱和 IStream
方法的 LoadPackageUserOpts 指標。
此時,會進行 LoadUserOptions
另一個呼叫,以查看 .suo 檔案是否有另一個必須讀取的區段。 此程式會繼續執行,直到環境已讀取和處理 .suo 檔案中的所有數據流為止。
儲存或關閉方案時,環境會使用 方法的SaveUserOptions指標呼叫 SavePackageSolutionProps 方法。 IStream
包含要儲存的二進位資訊會傳遞至 WriteUserOptions 方法,然後將資訊寫入 .suo 檔案,然後再次呼叫 SaveUserOptions
方法,以查看是否有另一個要寫入 .suo 檔案的信息數據流。
這兩種方法SaveUserOptions
和 WriteUserOptions
會以遞歸方式呼叫每個要儲存至 .suo 檔案的信息數據流,並傳入 的指標。IVsSolutionPersistence
它們會以遞歸方式呼叫,以允許將多個數據流寫入 .suo 檔案。 如此一來,使用者資訊會與解決方案一起保存,而且保證下次開啟方案時就會存在。