Форум программистов, компьютерный форум, киберфорум
C++/CLI Windows Forms
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
0 / 0 / 0
Регистрация: 24.08.2011
Сообщений: 94
1

EnumChildWindows: "недопустимая операция с выражением привязанной функции-члена"

11.09.2011, 10:53. Показов 2177. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
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
private: System::Void timer1_Tick(System::Object^  sender, System::EventArgs^  e) {
            HWND Window_Samp = FindWindow(L"TfmMain",NULL);
            if(!Window_Samp){
                WinExec("D:\\GTA San Andreas\\samp.exe", SW_NORMAL);
                Window_Samp = FindWindow(L"TfmMain",NULL);
                if(!Window_Samp){// даже после попытки запуска не было обнаружено окно :(
                    
                }
            }
            if(Window_Samp){
                SetWindowText(Window_Samp, L"SA Multiplayer 0.3c - Modifier");
                HWND Window_Properties = FindWindow(L"TfmServerProperties",NULL);
                                
                if(Window_Properties){
                    SetWindowText(Window_Properties, L"Информация о сервере (Modifier)");
                    HWND Window_Ip = FindWindowEx(Window_Properties,NULL,L"TEdit",L"");
                    char buffer[25];GetWindowTextA(Window_Ip, buffer, GetWindowTextLength(Window_Ip)+1);
                    std::string text( buffer, sizeof(buffer) );
                    this->Text = gcnew System::String(text.c_str());
                    EnumChildWindows(Window_Properties, &EnumChildWindowsProc, NULL);
                    //EnumChildWindows(Window_Properties, (WNDENUMPROC) GetElements, NULL);
                }
            }
        }
        
         BOOL __clrcall EnumChildWindowsProc(HWND hwnd,LPARAM lParam)
         {
             int N = 0;
             switch(++N)
             {
             case 3: // Ип адрес сервера
                 username = hwnd;
                 SetWindowText(username, L"test1");
                 break;
 
             case 4: // input Сервер пароль
                 hackreg = hwnd;
                 SetWindowText(hackreg, L"test2");
                 break;
 
             case 5: // input ркон пароль
                 regnum = hwnd;
                 SetWindowText(regnum, L"test3");
                 break;
 
             case 6: // кнопка Подключения
                 input_but = hwnd;
                 SetWindowText(input_but, L"test4");
                 break;
 
             case 7: // кнопка Сохранения
                 input_but2 = hwnd;
                 SetWindowText(input_but2, L"test5");
                 break;
 
             case 8: // кнопка Отмена
                 input_but3 = hwnd;
                 SetWindowText(input_but3, L"test6");
                 return 0;
             }
             return 1;
         }
При компиляции выдает ошибку
1>c:\users\developed\documents\visual studio 2010\projects\modifier\modifier\Loader.h(214): error C2276: &: недопустимая операция с выражением привязанной функции-члена
подскажите как решить.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.09.2011, 10:53
Ответы с готовыми решениями:

Ошибка: недопустимая операция с выражением привязанной функции-члена
Здравствуйте, программирую в visual studios и вот в одной из функция возникла такая проблема:...

Error C2276: недопустимая операция с выражением привязанной функции-члена
class NestedTriangle : public Figure { private: RectangularTriangle* internaltriangle; ...

Error C2276: недопустимая операция с выражением привязанной функции члена
пытаюсь сделать обработчик текстового фаила, но сделать его через класс. начал совсем недавно,...

Error C2276: недопустимая операция с выражением привязанной функции-члена
Всем привет, первый раз работаю с потоками и пока хочу чтобы поток мне вывел значение x*x в окошке...

4
1080 / 1007 / 106
Регистрация: 28.02.2010
Сообщений: 2,889
11.09.2011, 11:17 2
EnumChildWindowsProc должен быть статическим методом.

Добавлено через 5 минут
Полезно почитать: Передача указателя на метод в функцию
0
0 / 0 / 0
Регистрация: 24.08.2011
Сообщений: 94
11.09.2011, 16:42  [ТС] 3
C++
1
В среде выполнения обнаружена критическая ошибка. Ошибка произошла по адресу 0x68aad9e9 в потоке 0xc4c. Код ошибки 0xc0000005. Она может быть вызвана ошибкой в CLR или в небезопасных либо не поддающихся проверке фрагментах пользовательского кода. Обычно источниками таких ошибок бывают ошибки упаковки, допускаемые пользователями при COM-взаимодействии, либо PInvoke, повредивший стек.
выдает на строку
EnumChildWindows(Window_Properties, (WNDENUMPROC) EnumChildWindowsProc, NULL);
0
594 / 532 / 76
Регистрация: 22.03.2011
Сообщений: 1,585
11.09.2011, 16:51 4
объяви функцию EnumChildWindowsProc как CALLBACK
C++
1
2
int N = 0;
switch(++N)
мож все таки static int ?
0
0 / 0 / 0
Регистрация: 24.08.2011
Сообщений: 94
11.09.2011, 16:53  [ТС] 5
C++
1
2
3
4
1>c:\users\developed\documents\visual studio 2010\projects\modifier\modifier\Loader.h(221): warning C4441: соглашение вызова "__stdcall " игнорируется; вместо него используется "__clrcall "
1>  Создание кода...
1>  .NETFramework,Version=v4.0.AssemblyAttributes.cpp
1>Modifier.obj : warning LNK4248: неразрешенная лексема TypeRef (0100003D) для "Gdiplus.GpCachedBitmap"; образ нельзя запустить
А терь сразу после запуска приложения выдает ошибку см.предыдущий пост.
0
11.09.2011, 16:53
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.09.2011, 16:53
Помогаю со студенческими работами здесь

Список объектов, Ошибка C2276* : недопустимая операция с выражением привязанной функции-члена
Здравствуйте, бьюсь головой об стены и не могу понять в чем проблема, в Майкрософт есть объяснение...

Недопустимая операция: приводит к повторному вызову функции SetCurrentCellAddressCore
Есть dataGrid в него включено событие CellEnter. В обработчике данного события по некоторому...

Недопустимая операция: приводит к повторному вызову функции SetCurrentCellAddressCore при RemoveAt(index)
Всем доброго чего бы там ни было! Такие дела. Есть у меня DataGridView data. 2 столбца на...

недопустимая операция
Помогите разобраться. Вроде программа начинает работать а показывает ошибку "Недопустимая...

InvalidOperationException - Недопустимая операция
Делал программу с БД в WPF. Вставил в форму 4 TextBox`a и хотел чтобы при нажатии кнопки все...

Недопустимая операция в нескольких потоках
1. Есть класс MyClass в котором метод MyMethod каждую секунду увеличевает переменную на a 1 и...

Недопустимая операция в нескольких потоках
Че-то в соседнем разделе никто не откликнулся, так что спрошу здесь. Что-то непонятное происходит...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru