Здравствуйте, _Kleo, Вы писали:
_K>Здравствуйте!
_K>Помогите пожайлуста!
_K>При выполнение кода, который копирует текст в буфер обмена, выдаётся следующая ошибка: CoInitialize has not been called в строке pData->SetClipboard();. Операционная система — win 2000.
_K>void CTipaTestDlg::OnButton1()
_K>{
_K> // TODO: Add your control notification handler code here
_K> CString text ="This is test for COleDataSource object";
_K> HGLOBAL hGlobal = ::GlobalAlloc(GMEM_SHARE|GMEM_MOVEABLE, text.GetLength() + 4);
_K> LPSTR buf = (LPSTR)::GlobalLock(hGlobal);
_K> lstrcpy(buf, (LPCTSTR)text);
_K> ::GlobalUnlock(hGlobal);
_K> COleDataSource *pData = new COleDataSource;
_K> pData->CacheGlobalData(CF_TEXT, hGlobal);
_K> pData->SetClipboard();
_K> delete pData;
_K>}
Надо где либо в потоке в котором выполняется этот код вызвать
::CoInitialize
и где-нить соотвтественно
::CoUninitialize
Ed.ward
... << RSDN@Home 1.0 beta 7a >>