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

CreateFile WriteFIle Запись файла через меню?

07.12.2015, 13:40. Показов 482. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Пришёл черёд создать папку и записать в него информацию начал пробывать и не то что не то поможете ?
Хотелось чтоб через меню записывало! У Меня тут видимо всё слишком наивно просто )
Ошибки нет но не то

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
#include <windows.h>
#include <tchar.h>
#include <string>
 
#define ID_CREATE 1001
#define ID_SAVE 1002
#define ID_QUIT 1003
 
BOOL RegClass(WNDPROC, LPCTSTR, UINT);
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
 
HINSTANCE hInstance;
TCHAR szClass[] = TEXT("OpenSaveFile");
TCHAR szTitle[] = TEXT("Открытие и закрытие файла");
 
 
 int WINAPI WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpszCmdLine, int nCmdShow)
{
    MSG msg;
    HWND hwnd;
    hInstance = hInst;
    if (!RegClass(WndProc, szClass, COLOR_WINDOW)) return FALSE;
    hwnd = CreateWindow(szClass,szTitle , WS_OVERLAPPEDWINDOW | WS_VISIBLE,
        CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, 0, 0, hInstance, NULL);
    if (!hwnd) return FALSE;
    
    while(GetMessage(&msg, 0, 0, 0))
    { TranslateMessage(&msg); DispatchMessage(&msg); }
    return msg.wParam;
 
}
 
BOOL RegClass(WNDPROC Proc, LPCTSTR szName, UINT brBackground)
{
    WNDCLASS wc;
    wc.style = wc.cbClsExtra = wc.cbWndExtra = 0;
    wc.lpfnWndProc = Proc;
    wc.hInstance = hInstance;
    wc.hIcon = LoadIcon(NULL, IDI_APPLICATION);
    wc.hCursor = LoadCursor(NULL, IDC_ARROW);
    wc.hbrBackground = (HBRUSH)(brBackground +1);
    wc.lpszMenuName = NULL;
    wc.lpszClassName = szName;
    return (RegisterClass(&wc) != 0);
}
 
LRESULT CALLBACK WndProc( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
    static HMENU Hmenu, HpopupuMenu ;
    static TCHAR Path[30] = TEXT("C:\\1.txt");
    static TCHAR Buffer[256];
    static HANDLE hFile;
 
    switch (msg)
    {
        case WM_CREATE:
        {
            
            Hmenu=CreateMenu();
            HpopupuMenu=CreateMenu();
 
            AppendMenu(HpopupuMenu,MF_STRING,ID_CREATE,_T("Создать Файл"));
            AppendMenu(Hmenu,MF_POPUP,(UINT)HpopupuMenu,_T("Меню"));
            
            SetMenu(hwnd,Hmenu);
    
 
        hFile= CreateFile(Path, GENERIC_WRITE, 0, NULL,
        CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
 
    if (hFile == INVALID_HANDLE_VALUE) {
        printf("ERROR %x \n",GetLastError());
        return 2;
    }
                
 
 
            }
 
    
        case    WM_COMMAND:
        {
        
            switch(LOWORD(wParam))
            {
            case  ID_CREATE:
                {
                    
                    
            
                    
                    
                    WriteFile(hFile,Buffer,256,NULL,NULL);
                    CloseHandle(hFile);
                    return 0;
                    
 
            
                
 
                }
 
 
 
            }
        
        
        }
    
 
    }
    
        return DefWindowProc(hwnd, msg, wParam, lParam);
 
    }
может через эти функции так не положено создавать меню ?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.12.2015, 13:40
Ответы с готовыми решениями:

CreateFile, WriteFile
Подскажите работающий код программы на с++, которая создаёт файл с помощью CreateFile

Функции CreateFile() и WriteFile()
Господа, помогите разобраться с функциями CreateFile() и WriteFile(). В следующем простом примере пытаюсь создать файл txt и записать...

Createfile, readfile, writefile
Файл 4 создаётся,но данные из файла 1 не переносятся.Почему? HANDLE myFile; HANDLE myFile2; DWORD buf; char asd; myFile =...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
07.12.2015, 13:40
Помогаю со студенческими работами здесь

Отправка строки байт PCI-e устройству с использованием CreateFile() и WriteFile()
Собственно имеется PCI-e плата, драйвер разработчика для нее и программа позволяющая просматривать память (BAR'ы) платы. Можно ли нормально...

Запись вектора классов в файл через WriteFile
Имеется класс: class pages { public: QString modelName; // Название модели QString type; // Тип double volume; //...

Запись в файл различных типов данных через WriteFile
Имеется диалоговое окно с размещенными на нем элементами edit, в которые записаны данные разных форматов (byte, long, int32, int64, word,...

Запись в файл строк с WriteFile(.)
Привет всем! Пишу проектик.Возникает некая проблемка с записью строк в файл. вот код: #include &lt;iostream&gt; #include...

Чтение и запись в один и тот же файл с CreateFile
Добрый день. необходимо, чтобы можно было открыть файл, произвести из него чтение, и в процессе считывания при необходимости вносить...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru