我一直在瀏覽試圖查找實際系統調用的Qt源代碼,但似乎Qt並未使用MSDN上記錄的Windows API。例如grepping來源爲 「GetClipboardData」 返回結果中的兩個文件:Qt使用什麼API與Windows剪貼板進行交互?
qclipboard_win.cpp:
#if defined(Q_OS_WINCE)
...
HANDLE clipData = GetClipboardData(CF_TEXT)
qaxserverbase.cpp:
STDMETHOD(GetClipboardData)(DWORD dwReserved, IDataObject** ppDataObject);
...
HRESULT WINAPI QAxServerBase::GetClipboardData(DWORD, IDataObject**)
{
return E_NOTIMPL;
}
和 「SetClipboardData」:
qclipboard_win.cpp:
#if defined(Q_OS_WINCE)
...
result = SetClipboardData(CF_UNICODETEXT, wcsdup(reinterpret_cast<const wchar_t *> (data->text().utf16()))) != NULL;
這兩者似乎都沒有用,因爲它們是針對Win CE/Mobile宣佈的。