COM DLL library可以輸出函式給其他軟體 (該軟體的程式語言需支援DLL函式輸入) 使用。
此介面的一個優點是DLL只會被初始化一次,而不像命令列介面,每當函式被呼叫時就會執行初始化。當任務需要呼叫多個函式時,本介面的執行速度會比較快。
所有具備命令列介面的功能均有DLL輸出函式。所有的函式均使用同樣的語法。
在 C 語言:
void CALLBACK EntryPoint(HWND hwnd, HINSTANCE hinst, LPSTR lpszCmdLine, int nCmdShow);
只有 hwnd ( 主控視窗 (owner window) 的視窗代碼 (window handle),供程式產生的其他視窗參照 ) 與 lpszCmdLine ( 在命令列執行程式時所代入的引數字串陣列,相當於命令列介面工具的命令列引數 ) 等參數是在內部使用。
此通式中的EntryPoint是指輸出的函式名稱,可參閱本使用說明的個別功能介紹。
Delphi語言的範例 - 合併函式的宣告:
function Merge(hWnd:THandle;hInst:Cardinal;lpszCmdLine:PChar;nCmdShow:Integer):Cardinal;stdcall;external 'PDFShellTools.dll'
此介面可由 Windows Rundll32 tool呼叫,如以下的合併函式範例所示。
"C:\Program Files\PDF-ShellTools\PDFShellTools.dll" Merge "C:\My docs\File1.PDF;C:\My Docs\File2.pdf"
相較於命令列介面,這種用法並沒有額外的優點。但是當呼叫者並不想顯示Win32主控視窗時,便能派上用場。