Форум программистов, компьютерный форум, киберфорум
C/C++: WinAPI
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.93/15: Рейтинг темы: голосов - 15, средняя оценка - 4.93
KrAnn

Логин/пароль

21.11.2013, 15:40. Показов 3074. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ребята, помогите
Пишу на С++ и C#, но возникла такая ситуация - нужно разобраться в WINAPI
Поставлена задача написать программу:
В основном окне приложения должно быть размещено как минимум две кнопки, по нажатию на которые пользователю выводиться соответствующая нотификация о том, какие кнопки были нажаты. Так же окно должно содержать поля для ввода логина и 2х паролей. Причем по нажатию на кнопку или пункт меню должна происходить проверка на то, что в качестве логина указана не пустая строка, а оба пароля совпадают. В случае, когда логин пустой или пароли разные, выводить нотификационное сообщение.

Как и куда вставить поля и кнопочки и в чем заключается описание их обработчиков?
Вот что есть

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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
#include <windows.h>
#include <stdlib.h>
#include <string.h>
#include <tchar.h>
 
// Global variables
 
// The main window class name.
static TCHAR szWindowClass [] = _T("win32app");
 
// The string that appears in the application's title bar.
static TCHAR szTitle [] = _T("Win32 Login");
 
HINSTANCE hInst;
 
// Forward declarations of functions included in this code module:
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
 
int WINAPI WinMain(HINSTANCE hInstance,
    HINSTANCE hPrevInstance,
    LPSTR lpCmdLine,
    int nCmdShow)
{
    WNDCLASSEX wcex;
 
    wcex.cbSize = sizeof(WNDCLASSEX);
    wcex.style = CS_HREDRAW | CS_VREDRAW;
    wcex.lpfnWndProc = WndProc;
    wcex.cbClsExtra = 0;
    wcex.cbWndExtra = 0;
    wcex.hInstance = hInstance;
    wcex.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_APPLICATION));
    wcex.hCursor = LoadCursor(NULL, IDC_ARROW);
    wcex.hbrBackground = (HBRUSH) (COLOR_WINDOW + 1);
    wcex.lpszMenuName = NULL;
    wcex.lpszClassName = szWindowClass;
    wcex.hIconSm = LoadIcon(wcex.hInstance, MAKEINTRESOURCE(IDI_APPLICATION));
 
    if (!RegisterClassEx(&wcex))
    {
        MessageBox(NULL,
            _T("Call to RegisterClassEx failed!"),
            _T("Win32 "),
            NULL);
 
        return 1;
    }
 
    hInst = hInstance; // Store instance handle in our global variable
 
    // The parameters to CreateWindow explained:
    // szWindowClass: the name of the application
    // szTitle: the text that appears in the title bar
    // WS_OVERLAPPEDWINDOW: the type of window to create
    // CW_USEDEFAULT, CW_USEDEFAULT: initial position (x, y)
    // 500, 100: initial size (width, length)
    // NULL: the parent of this window
    // NULL: this application dows not have a menu bar
    // hInstance: the first parameter from WinMain
    // NULL: not used in this application
    HWND hWnd = CreateWindow(
        szWindowClass,
        szTitle,
        WS_OVERLAPPEDWINDOW,
        CW_USEDEFAULT,
        CW_USEDEFAULT,
        500, 100,
        NULL,
        NULL,
        hInstance,
        NULL
        );
    
    if (!hWnd)
    {
        MessageBox(NULL,
            _T("Call to CreateWindow failed!"),
            _T("Win32 Guided Tour"),
            NULL);
 
        return 1;
    }
    HWND Button = CreateWindowEx(0, _T("BUTTON"), _T("BUTTON"), WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON | BS_CENTER | BS_VCENTER,
        90, 300, 100, 30, hWnd, (HMENU) 1000, hInst, NULL);
 
    // The parameters to ShowWindow explained:
    // hWnd: the value returned from CreateWindow
    // nCmdShow: the fourth parameter from WinMain
    ShowWindow(hWnd,
        nCmdShow);
    UpdateWindow(hWnd);
 
    // Main message loop:
    MSG msg;
    while (GetMessage(&msg, NULL, 0, 0))
    {
        TranslateMessage(&msg);
        DispatchMessage(&msg);
    }
 
    return (int) msg.wParam;
}
 
 
//
//  FUNCTION: WndProc(HWND, UINT, WPARAM, LPARAM)
//
//  PURPOSE:  Processes messages for the main window.
//
//  WM_PAINT    - Paint the main window
//  WM_DESTROY  - post a quit message and return
//
//
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
    PAINTSTRUCT ps;
    HDC hdc;
    TCHAR greeting [] = _T("Input login and password");
 
    switch (message)
    {
    case WM_PAINT:
        hdc = BeginPaint(hWnd, &ps);
 
        TextOut(hdc,
            5, 5,
            greeting, _tcslen(greeting));
        // End application-specific layout section.
 
        EndPaint(hWnd, &ps);
        break;
    case WM_DESTROY:
        PostQuitMessage(0);
        break;
    default:
        return DefWindowProc(hWnd, message, wParam, lParam);
        break;
    }
 
    return 0;
}
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
21.11.2013, 15:40
Ответы с готовыми решениями:

Поставить пароль на файлы
Подскажите пожалуйста как на с++ реализовать пароли на файлы. Ну т.е. пользователь открывает прогу написанную на c++, выбирает файл,...

Пароль текущего пользователя
Товарищи, подскажите, а есть ли апишная функция для получения пароля текущего пользователя, только с учетом, что прога работает в домене с...

Передать логин и пароль на SMPT сервер
В общем вопрос по теме топика, програмно подконнектился к smtp.mail.ru, но не знаю как передать на него свой логин и пароль Вот как...

1
Заблокирован
21.11.2013, 17:57
Цитата Сообщение от KrAnn Посмотреть сообщение
Поставлена задача
Это кто тебе такой идиотизм поставил? Какой в ней смысл? Или и сюда нахальные студенты добрались?

Цитата Сообщение от KrAnn Посмотреть сообщение
Как и куда вставить поля и кнопочки
В данном случае ты создаёшь простое окошко, для полей и кнопочек, если конечно не хочешь рисовать вручную, тебе надо создавать не окно, а окно диалога. Окно диалога создаётся на основании файла ресурсов, в редакторе которого ты и можешь добавлять всякие поля и кнопки как в вин формс на шарпе

Добавлено через 1 минуту
Цитата Сообщение от KrAnn Посмотреть сообщение
чем заключается описание их обработчиков?
у окна диалога и будет свой обработчик, типа как тут у тебя обработчик оконных сообщений WndProc, в этом обработчике надо отлавливать нажатия на кнопки, ввод в поля и тд и тп
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
21.11.2013, 17:57
Помогаю со студенческими работами здесь

Вводится строка, содержащая команду вида: ftp://логин:пароль@адрес_сервера. Написать программу, которая из введенной строки выделяет логин, пароль и а
Вводится строка, содержащая команду вида: ftp://логин:пароль@адрес_сервера. Написать программу, которая из введенной строки выделяет логин,...

Подскажите кодинг морды сменя пароля...(1 страниц вводим логин и пас если правильно вылазит 2 типо смените новый пароль...а 3 пароль сменен)
Только нужно учесть хэширование и хранение проля в отдельном файлике

Передать серверу логин и пароль для авторитизации, но пароль нужно передать в md5
Нужно передать серверу логин и пароль для авторитизации, но пароль нужно передать в md5. Но у меня передаваемое md5 отличается от md5...

Логин и пароль
Программа после введения правильных данных выдает &quot;Добро пожаловать!&quot; ...

Логин и пароль
Народ, хочу сделать, так что бы с базы данных считывало логин и пароль. не получается, помогите решить проблемку. Код окна ...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&amp;d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru