混合最小規則規則集
Microsoft 最小規則的重點在於支援 Common Language Runtime 之 C++ 專案中最關鍵的問題,包括潛在的安全性漏洞和應用程式損毀。您應該在您為支援 Common Language Runtime 之 C++ 專案建立的任何自訂規則集中都包含這個規則集。
規則 |
描述 |
---|---|
使用尚未初始化的記憶體。 |
|
取值 NULL 指標。 |
|
使用未經確認的值 。 |
|
從呼叫的無終止。 |
|
終結串連 |
|
遺漏格式化函式中的字串引數。 |
|
遺漏整格式化函式中的整數引數。 |
|
遺漏格式化函式中的指標引數。 |
|
遺漏格式化函式中的字串指標引數。 |
|
傳回未初始化的記憶體。 |
|
索引超出緩衝區最大值 |
|
索引超出堆疊緩衝區最大值 |
|
遺漏格式化函式中的浮點引數。 |
|
格式化函式中的額外引數。 |
|
格式化函式中的非浮點引數。 |
|
格式化函式中的非整數引數。 |
|
格式化函式中的非字元引數。 |
|
無效的字串轉換。 |
|
無效的 CreateProcess 呼叫 |
|
無效的格式化函式中的物件引數。 |
|
Logical-Not Bitwise-And 優先順序 |
|
Logical-Not Bitwise-Or 優先順序。 |
|
無效的格式化函式中的字串引數。 |
|
無效的格式化函式中的寬字元字串引數。 |
|
不相符的大小和使用數目。 |
|
不正確的變數引數函式呼叫。 |
|
可能的引數型別不符。 |
|
讀取滿溢 |
|
撰寫滿溢 |
|
無效的參數值。 |
|
無效的屬性 |
|
發生衝突的屬性值。 |
|
參考不可以是空值。 |
|
在非指標的空值。 |
|
在 void的MustCheck |
|
在非指標或陣列的緩衝區大小。 |
|
在取值零的空值不符 |
|
常數的寫入權限。 |
|
在之前狀況中回傳使用過 |
|
在非指標的空值結束 |
|
MustCheck 屬性必須為 Yes 或 No。 |
|
沒有緩衝區大小的項目大小。 |
|
緩衝區大小超過陣列大小 |
|
在非指標的緩衝區大小。 |
|
在屬性中沒有屬性。 |
|
在不可讀取緩衝區的有效大小 |
|
在非可寫入緩衝區的可寫入的大小 |
|
無效的註釋: 'NeedsRelease' 屬性的值必須為 Yes 或 No。 |
|
無效的指標值的字串大小。 |
|
無效的字串型別的大小 |
|
無效的字串參數大小 |
|
無效的不可能執行到的位置的字串大小。 |
|
無效的字串緩衝區型別的大小 |
|
無效的註釋: NeedsRelease 屬性在 void 型別的值不能使用。 |
|
無法辨認的格式字串樣式 |
|
在這個函式上使用屬性附註會使其所有存在的 __declspec 附註無效。 |
|
無效的大小規格: 無法剖析運算式 |
|
無效的 Deref=或 Notref=: 無法剖析運算式 |
|
值不是有效的Yes/No/Maybe。 |
|
值不是字串。 |
|
值不是數值。 |
|
未預期的附註表示錯誤 |
|
附註的引數的預期數字不符合附註的引數的實際數目 |
|
附註的未預期的附註錯誤。 |
|
被附註的參數必須是指標。 |
|
正在取值 NULL 指標。指標含有與另一個指標的空值。 |
|
非靜態成員之不合法的參考。 |
|
類別成員的參考模稜兩可。 |
|
Success_ 或 _On_failure_ 用於不合法的內容中: |
|
左運算元指向結構,請使用 '->'。 |
|
左運算元是結構,請使用 '.'。 |
|
On_failure_ 內容的註釋不能明確在pre context 中 |
|
SAL_context 必須有靜態內容名稱。 |
|
附註必須有預期的指標運算式。 |
|
_Use_decl_annotations_ 附註必須不需修改就能用來參考預先宣告。 |
|
屬性參數名稱必須是 p1...p9。 |
|
typefix 不能套用到已經有 typefix 的參數 |
|
checkReturn 附註只適用於為特定函式參數的後置條件。 |
|
對於函式,附註的參數數目與其所找到的不符。 |
|
對於函式參數,附註的參數與在檔案找到的不符。 |
|
註釋中標註的參數需要列舉的成員 |
|
整數運算式為附註預期標記法的參數 |
|
用於附註的參數預期的字串運算式。 |
|
__yes、 __no 或 __maybe為預期的附註 |
|
未找到預期的附註參數語彙基元/識別項。 |
|
附註需要參數。 |
|
沒有找到附註中參數所需的正確數目 |
|
附註不可以同時是 PrimOp (在目前宣告中)。 |
|
附註不可以同時是 PrimOp (請參閱預先宣告)。 |
|
附註參數:無法使用附註中的型別 |
|
附註不支援參數。 |
|
參數的型別沒有成員。 |
|
附註只在陣列有效 |
|
pre、post 或 deref 未套用至任何附註。 |
|
pre、post 或 deref 已套用至區塊。 |
|
__at 運算式不套用於目前函式。 |
|
函式無法單獨做為附註。 |
|
附註不能用在運算式中。 |
|
不再支援參數的註釋。 |
|
在參數的註釋具有一個以上的值,stringValue 和 longValue。請使用 paramn=xxx。 |
|
在參數的註釋具有兩個值,stringValue 或 longValue 以及 paramn=xxx。請只使用 paramn=xxx。 |
|
參數的註釋有 param2 但沒有 param1。 |
|
函式的附註參數無法辨認 |
|
函式的註釋需要執行的取值比實際註釋之型別允許的還多。 |
|
函式的附註會在非成員函式上附註 'this'。 |
|
函式中的參數附註不符合參數的型別。 |
|
函式不一致的附註:先前的執行個體有錯誤發生。 |
|
函式不一致的附註:這個執行個體有錯誤發生。 |
|
函式不一致的附註:參數在這個執行個體有另一個附註。 |
|
函式不一致的附註:參數在這個執行個體有另一個附註。 |
|
dynamic_cast()在附註中不支援。 |
|
在函式中找到附註的語法錯誤: |
|
找到內建的條件式註釋語法錯誤: |
|
結果清單值必須是常數。 |
|
在函式中找到附註的語法錯誤: |
|
函式、參數的附註在檢查時,與函式宣告不一致。 |
|
對於函式,線索與函式宣告不一致。 |
|
_Macro_value_ 的參數為空值。 |
|
找到符號的 'begin',但沒有相符的 'end'。 |
|
找到符號的 'end',但沒有相符的 'begin'。 |
|
格式化字串必須在前置條件 |
|
針對函式,在參數中的語法錯誤 |
|
函式的結尾附近發生錯誤。 |
|
函式的 _At_() 附註中有語法錯誤 (無法辨認的參數名稱)。 |
|
函式的 _At_() 附註中有語法錯誤 (無效的參數名稱)。 |
|
對函式來說: ReadableTo 或 WritableTo 沒有有限的規格做為參數。 |
|
函式的附註包含比實際參數數目還多的外部。 |
|
位於 deref 層級 0 的 post null/notnull 對函式是無意義的。 |
|
運算子不相容型別的運算式運算元。 |
|
函式的第一個宣告中沒有附註。 |
|
額外的 _Deref_ 運算子在註解中被找到。 |
|
一個模稜兩可的 _Deref_ 運算子在註解中被找到。 |
|
找到非正確定位 _Notref_ 運算子套用至語彙基元。 |
|
在剖析時語彙基元找到的錯誤。 |
|
附註描述條件上不適合的情況: |
|
附註描述條件中不可以使用動態值 (變數)。 |
|
具有可處置欄位的型別應該是可處置的 |
|
必須移除空的完成項 |
|
可處置的欄位應該受到處置 |
|
覆寫 ValueType.Equals 時必須一併多載等號比較運算子 |