網路監視器 BLOB

網路監視器二進位大型物件 (BLOB) 是一個泛型資料結構,其中包含網路介面卡的組態和位置資訊, (NIC) 。 使用 BLOB 來代表 NIC,以及篩選 NIC 清單中的專案。 BLOB 也可以包含應用程式特定資料,而不會影響其保留的其他資料。 BLOB 實作對於必須以 BLOB API 存取 BLOB 的所有層級都不透明。

BLOB 結構

BLOB 可視為用來指定字串的階層式樹狀結構。 此樹狀結構有三個圖層:擁有者、類別和標籤。 擁有者是字串,通常表示讀取專案的人員。 Category 也是一個字串,指定擁有者下標籤的一般功能群組。 Tag 是專案的實際名稱。

BLOB 的結構特性包括:

  • 一個進程內的 BLOB 協助程式會由每個 BLOB 內建的 mutex 彼此保護。
  • 每個 BLOB 都有內部版本號碼,讓協助程式可以處理目前和未來的 BLOB 表單。 如果您透過遠端程序呼叫將 BLOB 傳送至另一部電腦,可能會發生版本衝突。
  • BLOB 本身是 void 的指標。 請注意,應用程式應該使用 const 修飾詞配置 BLOB,以避免改變內容。
  • 每個指定項及其值都是字串。 請注意, GetString 函式所傳回的字串實際上是 BLOB 的指標,不應該變更。 基於這個理由,必須將這些字串指定為 const char**pX* ,讓應用程式不小心變更它們。

一般而言,具有 const 指示項的所有參數都鼓勵呼叫者避免變更值,而不是禁止協助程式函式變更它們。 事實上,協助程式函式通常會變更這些值。