連結器工具警告 LNK4222
匯出符號 'symbol' 不應指派序數
下列符號不應依序數匯出:
DllCanUnloadNow
DllGetClassObject
DllGetClassFactoryFromClassString
DllInstall
DllRegisterServer
DllRegisterServerEx
DllUnregisterServer
這些函式一律會依名稱使用 GetProcAddress
來找到。 連結器警告這類導出是因為可能會導致較大的影像。 如果您的序數導出範圍很大,且導出相對較少,就可能發生此情況。 例如,
EXPORTS
DllGetClassObject @1
MyOtherAPI @100
匯出位址表中需要 100 個位置,其中 98 個位置(2-99) 只是填充。 另一方面
EXPORTS
DllGetClassObject
MyOtherAPI @100
將需要兩個位置。 (請注意,您也可以使用 /EXPORT 連結器選項匯出。