Форум программистов, компьютерный форум CyberForum.ru

просмотр содержимого буфера обмена - C++

Восстановить пароль Регистрация
 
druidich
 Аватар для druidich
30 / 30 / 4
Регистрация: 21.05.2012
Сообщений: 428
21.12.2012, 17:11     просмотр содержимого буфера обмена #1
C++
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
#include <tchar.h>
#include <windows.h>
LPSTR szWindowClass = "МойКласс";
 
LRESULT CALLBACK WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
    {
        switch(uMsg)
        {
            case WM_DESTROY:
            PostQuitMessage(0);
            default:
            break;
        }
        return DefWindowProc(hWnd, uMsg, wParam, lParam);
    };
 
 
HINSTANCE hin;
 
int APIENTRY WinMain(HINSTANCE hInst, HINSTANCE hPrev, LPSTR lpCmdLine, int nCmdShow)
    {
        WNDCLASS wc; 
        wc.hInstance=hInst;
        wc.style=CS_HREDRAW | CS_VREDRAW|CS_DROPSHADOW;
        wc.hbrBackground=(HBRUSH)COLOR_WINDOWFRAME;
        wc.lpfnWndProc = WndProc;
        wc.cbClsExtra     = 0;
        wc.cbWndExtra     = 0;
        wc.hIcon          = 0;
        wc.hCursor        = 0;
        wc.lpszMenuName   = 0;
        wc.lpszClassName = szWindowClass;
        RegisterClass(&wc);
        wc.lpfnWndProc= WndProc;
 
 
 
        RECT rc;
        //родительское главное окно
        HWND hWnd = CreateWindow(szWindowClass,"WindowsMiha",WS_OVERLAPPEDWINDOW,0,0,430,180,0,0,NULL,0);
        //текстбокс
        HWND list = CreateWindow("LISTBOX","", WS_CHILD|WS_VISIBLE|LBS_STANDARD,30,30,400,150,hWnd,0,hin,NULL);
 
        ShowWindow(hWnd,SW_SHOW );
 
/////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////сам код
////////////////////////////////////////////////////////////////////////////////////////////////////////////
    HGLOBAL hglb,lpstr;
    //LPRECT lpstr;
    
//открываем буфер
    OpenClipboard(hWnd);
        
    
    hglb=GetClipboardData(CF_TEXT); ///дискриптор на текс в буфере
 
    lpstr=GlobalLock(hglb); ///указатель на текст 
    
    SendMessage(list,LB_ADDSTRING,0,(long)&hglb); //выводим текст в текстбокс
    GlobalUnlock(hglb);
 
//закрываем буфер
    CloseClipboard();
//////////////////////////////////////////////////////////////////////////////////////////////////////
 
    
 
        MSG msg;
        while(GetMessage(&msg, 0, 0, 0))
        {
            TranslateMessage(&msg);
            DispatchMessage(&msg);
            
        };
 
    }
Надо просматреть текстовое содержание буфера, а у меня выводит какую-то белиберду.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.12.2012, 17:11     просмотр содержимого буфера обмена
Посмотрите здесь:

Очистка буфера! C++
C++ Обнуление буфера.
C++ не могу отсортировать массив методом обмена при котором просмотр нач с 1 элемента
Незнаю как вставить файл из буфера обмена...надеюсь на помощь C++
C++ переполнение буфера
C++ Code::Blocks Когда нажимаешь среднюю среднюю кнопку мыши, то вставляется содержимое буфера обмена. Как это можно изменить?
Взять текст из буфера обмена C++
Просмотр содержимого локального диска в 16-м виде по адресам секторов и имени файлов C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 07:40. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru