Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Работа с CLIPBOARD / 3 сообщений из 3, страница 1 из 1
21.10.2003, 10:48
    #32299400
oracle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с CLIPBOARD
Такая ситуация, необходимо при запуске программы занести в буфер данных обычный текст, может кто сталкивался с этим...
...
Рейтинг: 0 / 0
21.10.2003, 11:02
    #32299421
Tracer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с CLIPBOARD
нате

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
//////////////////////////////////////////////////////////////////////////////////////
//
//
// Записать текст в буфер обмена
//
//
/////////////////////////////////////////////////////////////////////////////////////
void CBsManagerView::CopyTextToClipboard(LPCTSTR pszText)
{
    if (OpenClipboard())
    {
        EmptyClipboard();

        HGLOBAL hglbCopy;
        LPWSTR  lptstrCopy;

        int iLen = strlen(pszText);

        hglbCopy = GlobalAlloc(GMEM_MOVEABLE, (iLen +  1 ) * sizeof(wchar_t)); 
        if (hglbCopy == NULL) 
        { 
            CloseClipboard(); 
            return; 
        } 
 
        // Lock the handle and copy the text to the buffer. 
        lptstrCopy = (LPWSTR)GlobalLock(hglbCopy); 
        memcpy(lptstrCopy, (LPWSTR)_bstr_t(pszText), iLen * sizeof(wchar_t)); 
        lptstrCopy[iLen] = (TCHAR) 0 ;    // null character 
        GlobalUnlock(hglbCopy); 
 
        // Place the handle on the clipboard. 
        SetClipboardData(CF_UNICODETEXT, hglbCopy);

        CloseClipboard();
    }
}
...
Рейтинг: 0 / 0
21.10.2003, 11:06
    #32299426
snake
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с CLIPBOARD
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
 if ( !OpenClipboard() )
  {
    AfxMessageBox(  "Cannot open the Clipboard"  );
    return;
  }
  // Remove the current Clipboard contents
  if( !EmptyClipboard() )
  {
    AfxMessageBox(  "Cannot empty the Clipboard"  );
    return;
  }
  // ...
  // Get the currently selected data, hData handle to global memory of data
  // ...
  // For the appropriate clipboard formats...
  // where CF_?? is CF_TEXT, CF_BITMAP, etc.
  if ( ::SetClipboardData( CF_??, hData ) == NULL )
  {
    AfxMessageBox(  "Unable to set Clipboard data"  );
    CloseClipboard();
    return;
  }
  // ...
  CloseClipboard();

http://support.microsoft.com/default.aspx?scid=kb;en-us;274308
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Работа с CLIPBOARD / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]