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

Где в winapi программе вставить текст подобного рода

03.12.2019, 18:25. Показов 1504. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
извините за невежество.
C++
1
2
3
4
5
6
7
8
9
10
11
12
GetCurrentDirectoryA(sizeof(patchFile),patchFile);
                strcat(patchFile, "\\katalogfilm.txt");
 
                hFile=CreateFileA(patchFile,            // адрес строки имени файла 
                    GENERIC_READ||GENERIC_WRITE,    // режим доступа
                    0,                              // режим совместного использования файла 
                    NULL,                           // дескриптор защиты 
                    OPEN_EXISTING,                  // параметры создания 
                    FILE_ATTRIBUTE_NORMAL,          // атрибуты файла 
                    NULL);                          // идентификатор файла с атрибутами
            if (hFile == INVALID_HANDLE_VALUE)
                    MessageBox(NULL, TEXT("Could not open file."), TEXT("Error"), MB_OK);
case WM_CREATE:?
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.12.2019, 18:25
Ответы с готовыми решениями:

Как узнать, где в этой программе код С++, а где WinApi?
В среде Visual C++ создали оконное приложение (Файл->Новый->Проекты->Win32 Application, далее: Файл->Новый->Файлы ->C++Source File...

написать макрос задали.но встречаю подобного рода впервые
На Листе2 электронной таблицы набрать данные (рис.). Написать макрос, который вводит количество точек n из ячейки С1, координаты заданных n...

Форумчане выручайте. Как решать подобного рода задания (4 шт)
Я болел, а завтра контрольная работа по этой теме. Несколько заданий понял, щас сидел учил, а с этими проблема. Это примеры...

6
Эксперт С++
 Аватар для _lunar_
3701 / 2836 / 451
Регистрация: 03.05.2011
Сообщений: 5,193
Записей в блоге: 21
04.12.2019, 11:40
Цитата Сообщение от DenAlpetyan Посмотреть сообщение
Где в winapi программе вставить текст подобного рода
там где нужно получить дескриптор файла, и WM_CREATE тут совершенно не причём.

вообще, не стоит перегружать кодом функцию WndProc (как собственно и WinMain)
создавайте отдельные функции, классы, пространство имен (отдельные cpp файлы) и там уже обрабатывайте вызовы winapi функций.
2
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
04.12.2019, 12:04
Цитата Сообщение от DenAlpetyan Посмотреть сообщение
Где в winapi программе вставить текст подобного рода
А тебе точно оконное приложение нужно? Может достаточно будет консольного?
0
15 / 15 / 3
Регистрация: 18.05.2019
Сообщений: 851
04.12.2019, 12:31  [ТС]
_lunar_, тогда где подключать?

oleg-m1973, да точно.
0
04.12.2019, 13:28

Не по теме:

Цитата Сообщение от _lunar_ Посмотреть сообщение
вообще, не стоит перегружать кодом функцию WndProc (как собственно и WinMain)
A ещё полезно, когда в WinMain сам WM_CREATE стоит в конце, а первыми идут WM_TIMER, WM_PAINT и т.д.
Во-первых, WM_CREATE срабатывает один раз и не должен мозолить глаза.
Во-вторых, при отладке те самые WM_TIMER, WM_PAINT срабатывают очень часто и удобнее, когда они находятся в начале.
В-третьих, в switch-case они будут проверяться первыми, а это ускорит работу программы на миллиардные доли. Но если программа сидит на таймере сутками, то экономия общего процессорного времени через год работы станет очевиднее.

0
Эксперт С++
 Аватар для _lunar_
3701 / 2836 / 451
Регистрация: 03.05.2011
Сообщений: 5,193
Записей в блоге: 21
04.12.2019, 16:29
Лучший ответ Сообщение было отмечено DenAlpetyan как решение

Решение

Цитата Сообщение от DenAlpetyan Посмотреть сообщение
тогда где подключать?
говорю же, там где нужно получить дескриптор файла.
вот выполняется у вас код: создаётся окно, нажимаются какие-то кнопки, что-то выводится в textbox и куча всего остального.
и вдруг (например по нажатию кнопки) вам нужно открыть/создать файл
C++
1
2
3
4
5
6
case WM_COMMAND:
    switch (wParam) {
    case IDC_BUTTON1:
        OpenFileDialog();
        break;
    }
происходит вызов функции OpenFileDialog
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
OPENFILENAME OpenFileName{};
 
void OpenFileDialog() {
    CHAR FilePath[MAXWORD] = "";
    ZeroMemory(&OpenFileName, sizeof(OpenFileName));
    OpenFileName.lStructSize = sizeof(OpenFileName);
    OpenFileName.lpstrFilter = "Executable Files (*.exe)\0*.exe\0 Dynamic Link Libraries (*.dll)\0*.dll";
    OpenFileName.lpstrFile = FilePath;
    OpenFileName.nMaxFile = MAXWORD;
    OpenFileName.Flags = OFN_EXPLORER | OFN_FORCESHOWHIDDEN;
    if (GetOpenFileName(&OpenFileName)) {
        hFile=CreateFileA(...);
}
2
15 / 15 / 3
Регистрация: 18.05.2019
Сообщений: 851
04.12.2019, 16:54  [ТС]
_lunar_, спасибо, ответ полностью понятен.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.12.2019, 16:54
Помогаю со студенческими работами здесь

Как прочитать XML документ с тэгами и атрибутами подобного рода
Добрый день! Имеется документ XML вида: <?xml version="1.0" encoding="utf-8" ?> <blocks> <block number"123"> ...

Подскажите, как делаются подобного рода переходы в css? (внутри скриншот)
мне интересно, как делаются такие очертания менюшек или любого другого блока. на скриншотах указал стрелками на интересующий меня елемент.

Вставить из буфера обмена текст туда, где находиться курсор мышки
Здравствуйте как вставить из буфера обмена текст где находиться курсор мышки спасибо.

Как вставить текст из буфера туда где мигает курсор? В хром например или другую программу?
Помогите все перерыл нигде нету инфы как вставить текст на место курсора в винде.

Где используется поверхностный интеграл второго рода?
Здравствуйте,подскажите пожалуйста, для вычисления чего используется поверхностный интеграл второго рода в реальной жизни,где он...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru