過時的埠類別函式
標頭檔 portcls.hdefines 宏,其中包含已由新 PortCls 函式取代的過時 PortCls 函式名稱。 這些宏允許包含已淘汰 PortCls 函式名稱參考的舊原始程式碼,以重新編譯以使用新的 PortCls 函式,而不需要對原始程式檔進行任何編輯。
編譯使用過時名稱的原始程式碼時,請定義參數名稱PC_OLD_NAMES。 如果這個參數比將 語句 #define PC_OLD_NAMES
引入原始程式檔本身更方便,編譯器命令列引數 「-DPC_OLD_NAMES」 可以定義此參數。
下表列出左側資料行中過時的 PortCls 函式名稱。 針對每個過時的名稱,中央資料行包含取代它的新 PortCls 函式名稱。
過時的函式名稱 | 新增函式名稱 | 引數是否變更? |
---|---|---|
AddAdapterDevice |
YES |
|
CompletePendingPropertyRequest |
否 |
|
GetTimeInterval |
否 |
|
InitializeAdapterDriver |
YES |
|
NewDmaChannel |
否 |
|
NewMiniport |
否 |
|
紐波特 |
否 |
|
NewResourceList |
否 |
|
NewResourceSublist |
否 |
|
NewServiceGroup |
否 |
|
RegisterPhysicalConnection |
YES |
|
RegisterPhysicalConnectionFromExternal |
YES |
|
RegisterPhysicalConnectionToExternal |
YES |
|
RegisterSubdevice |
YES |
在某些情況下,變更數量不超過簡單名稱變更:限定詞 Pc
會插入名稱開頭,以指出函式是在 PortCls 中實作。 不過,在其他情況下,除了函式的名稱之外,引數清單也會變更。 上表中的右欄指出引數是否已變更。
在引數變更的情況下,portcls.h 中的宏會將過時 PortCls 函式的引數清單轉換為新 PortCls 函式的對等引數。 下列宏包含引數轉換:
#define InitializeAdapterDriver(c1,c2,a) \
PcInitializeAdapterDriver(PDRIVER_OBJECT(c1),PUNICODE_STRING(c2),PDRIVER_ADD_DEVICE(a))
#define AddAdapterDevice(c1,c2,s,m) \
PcAddAdapterDevice(PDRIVER_OBJECT(c1),PDEVICE_OBJECT(c2),s,m,0)
#define RegisterSubdevice(c1,c2,n,u) \
PcRegisterSubdevice(PDEVICE_OBJECT(c1),n,u)
#define RegisterPhysicalConnection(c1,c2,fs,fp,ts,tp) \
PcRegisterPhysicalConnection(PDEVICE_OBJECT(c1),fs,fp,ts,tp)
#define RegisterPhysicalConnectionToExternal(c1,c2,fs,fp,ts,tp) \
PcRegisterPhysicalConnectionToExternal(PDEVICE_OBJECT(c1),fs,fp,ts,tp)
#define RegisterPhysicalConnectionFromExternal(c1,c2,fs,fp,ts,tp) \
PcRegisterPhysicalConnectionFromExternal(PDEVICE_OBJECT(c1),fs,fp,ts,tp)