共用方式為


MMIOPROC 回呼函式 (mmiscapi.h)

MMIOProc 函式是 mmioInstallIOProc 函式所安裝的自定義輸入/輸出 (I/O) 程式。 MMIOProc 是應用程式定義函數名稱的佔位元。 此函式的位址可以在 mmioInstallIOProc 的回呼地址參數中指定。

語法

MMIOPROC Mmioproc;

LRESULT Mmioproc(
  LPSTR lpmmioinfo,
  UINT uMsg,
  LPARAM lParam1,
  LPARAM lParam2
)
{...}

參數

lpmmioinfo

指向包含開啟檔案相關信息的 MMIOINFO 結構。

I/O 程式必須維護此結構中的 lDiskOffset 成員,以指出下一個讀取或寫入位置的檔案位移。 I/O 程式可以使用 adwInfo[] 成員來儲存狀態資訊。 I/O 程式不應該修改 MMIOINFO 結構的任何其他成員。

uMsg

指定訊息,指出要求的 I/O 作業。 可接收的訊息包括 MMIOM_OPENMMIOM_CLOSEMMIOM_READMMIOM_SEEKMMIOM_WRITEMMIOM_WRITEFLUSH

lParam1

指定訊息的應用程式定義參數。

lParam2

指定訊息的應用程式定義參數。

傳回值

傳回值取決於 uMsg 所指定的訊息。 如果 I/O 程式無法辨識訊息,它應該會傳回零。

備註

與檔案相關聯的 MMIOINFO 結構中,由 azureMMIOProc 成員指定的四個字元程式代碼會識別自定義儲存系統的擴展名。 當應用程式以 「one.xyz+two」 之類的檔名呼叫 mmioOpen 時,會呼叫與四個字元代碼 「XYZ」 相關聯的 I/O 程式,以開啟 「one.xyz」 檔案的 「two」 元素。

mmioInstallIOProc 函式會針對每個 Windows 型應用程式維護個別安裝的 I/O 程式清單。 因此,不同的應用程式可以針對不同的 I/O 程式使用相同的 I/O 程式識別碼,而不會發生衝突。 不過,全域安裝 I/O 程式可讓任何進程使用該程式。

如果應用程式多次呼叫 mmioInstallIOProc 來註冊相同的 I/O 程式,則必須呼叫 mmioInstallIOProc ,以在每次安裝程式時移除程式一次。

mmioInstallIOProc 不會防止應用程式使用相同的標識碼安裝兩個不同的 I/O 程式,或安裝具有其中一個預先定義標識符的 I/O 程式, (“DOS ”, “MEM ”) 。 最近安裝的程式優先,而最近安裝的程式是第一個要移除的程式。

搜尋指定的 I/O 程式時,會先搜尋本機程式,然後再搜尋全域程式。

規格需求

需求
最低支援的用戶端 Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平台 Windows
標頭 mmiscapi.h (包括 Mmiscapi.h、Windows.h)