Форум программистов, компьютерный форум, киберфорум C/C++: WinAPI
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ WinAPI WinApi (C2664 + C2440) Выбивает ошибки, ка пофиксить? #pragma comment(linker,"\"/manifestdependency:type='win32' \ name='Microsoft.Windows.Common-Controls' version='6.0.0.0' \ processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"") #undef UNICODE #include <Windows.h> #include "resource.h" https://www.cyberforum.ru/ win-api/ thread2449576.html C++ WinAPI PathFileExistsA vs GetFileAttributesA
Добрый день! Нужна функция, которая проверяет существование диска, папки, файла. В интернете прочитал, что наиболее распространена для этой задачи Win32 API функция "GetFileAttributesA". Но с точки зрения здравого смысла логичнее использовать "PathFileExistsA". Т.к. само название функции включает слово "Exists". Кроме того, у меня нет задачи узнать атрибуты папки, файла. Что лучше...
C++ WinAPI Таблицы winapi https://www.cyberforum.ru/ win-api/ thread2447841.html
Изучаю WINAPI. Брал у кого-то с киберфорума данныи листинг. Выдаёт кучу ошибок. Начиная от "значение типа <const char> нельзя исп.... для char"строки 41-42(пытался зафиксить ошибку путём добавления const перед char, работало, но появлялась другая ошибка в строках 49-53) Заканчивая "отсутствует ; перед lParam/lvc/lvi" в строках ниже. как фиксить, не понимаю. Вижак 17 #include <windows.h>...
C++ WinAPI Compiler Error C3646 https://www.cyberforum.ru/ win-api/ thread2447831.html
Добрый день коллеги! помогите пожалуйста решить проблему с ошибкой "Compiler Error C3646" Вот хедер нужного класса: #pragma once #include <glew.h> #define GLFW_INCLUDE_GLU #include <GLFW/glfw3.h> #include <iostream> #include <stdio.h> #include <stdlib.h> #include "GlslShader.h"
C++ WinAPI Работа с Windows Vault
Здравствуйте! Пишу программку для восстановления утраченных паролей из Internet Explorer (на подобии iepassview). Пароли он сохраняет в windows vault, в секции "учетные данные интернета" на русском, "web credentials" на английском. В общем мне нужно работать именно с web credentials. Пробовал CredRead(), но он почему то работает только c GENERIC. Не подскажите какие в принципе есть варианты...
C++ WinAPI Курсовой проект Игра "Жизнь" на WinAPI Итак, уважаемые форумчане, всем привет. Нужно создать курсовой проект по WinAPI по дисциплине "Операционные системы", но я даже не знаю, как это все сделать. Суть работы в том, чтобы: Создать программу,которая: a.Считывает из файла No1 начальные состояния поля для игры «Жизнь» (замечание: рекомендуется не более 4). b.Позволяет ввести пользователю правила жизни и смерти в игре «Жизнь».... https://www.cyberforum.ru/ win-api/ thread2447604.html
C++ WinAPI Keylogger Программа должна перехватывать вводимый текст из всех окон и сохранять в файл, делать скриншоты экрана через указанный интервал, мониторинг запуска и закрытия программ/ Помогите сотворить такое чудо https://www.cyberforum.ru/ win-api/ thread2447366.html Не работает DialogBox и WM_TIMER. Добавление и удаление записей через модальное диалоговое окно C++ WinAPI
Таймер просто после включения отщелкивает одну секунду и все и останавливается ... и не обращает внимание на значение в поле (сколько секунд ему было там написано). И так каждое включение отщелкивает и стопорится. Причем таймер даже как-то не пропорционально длине отведенного ему поля отщелкивает значение зелеными шагами в поле. Даже если я ему напишу 2сек он мне все-равно делает мелкие шаги. ...
C++ WinAPI Оконное приложение WINAPI. Проблемы с гиперссылкой, диалоговыми окнами, таймером, и границы окна https://www.cyberforum.ru/ win-api/ thread2447139.html
1. Не отображается гиперссылка, она нигде не выскакивает (строки в коде 156 и 220); 2. Не отображаются окна добавления и удаления записей по нажатию на соответствующие кнопки (хотя я вроде бы всё прописал в коде) (строки в коде 371-400); 3. И я не могу понять в чем у меня косяк - у меня коряво и не по-русски работает (и не останавливается сам) таймер (в соответствии с тем, какое время секунд...
C++ WinAPI Ошибка при сборке "Аргумент типа const wchar_t несовместим с параметром типа LPWSTR" При попытке собрать решение вылетают ошибки в 242-248 строках #include<Windows.h> #include<WindowsX.h> #include<CommCtrl.h> #include<tchar.h> #include <WinUser.h> #define IDC_LIST 2001 #define IDC_BUTTON_ADD 2002 #define IDC_BUTTON_ADD2 2003 https://www.cyberforum.ru/ win-api/ thread2446628.html
C++ WinAPI WinApi начало
Только начал изучение WinApi, как сразу столкнулся с целой кучей ошибок #include <Windows.h> int CALLBACK winMain(HINSTANCE hInstance, HINSTANCE, PWSTR szCmdLine, int nCmdShow) { MSG msg(); HWND hwnd(); WNDCLASSEX wc{sizeof(WNDCLASSEX)}; wc.cbClsExtra = 0;
C++ WinAPI Расшифровка DPAPI из бинарного файла Здравствуйте, очень хотелось бы посмотреть на пример расшифровки DPAPI из файла https://www.cyberforum.ru/ win-api/ thread2446162.htm
0 / 0 / 0
Регистрация: 19.12.2018
Сообщений: 51
0

Не выполняется CryptEncrypt (Си) - C++ WinAPI - Ответ 13553772

08.05.2019, 13:01. Показов 586. Ответов 2
Метки (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет.
Пишу на Си.
Пытаюсь при помощи WINAPI открыть файл,отобразить его в памяти,зашифровать данные и записать в другой файл.
Но CryptEncrypt не выполняется,новый файл получается точь в точь со старым, а strerror(errno) пишет "no errors".
Может кто подскажет,что я не так делаю.
Спасибо за внимание.
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
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <wincrypt.h>
#define PKEY_PATH 57
#define ERROR_CREATE_THREAD -11
#define ERROR_JOIN_THREAD   -12
#define SUCCESS               0
#define ALG_SID_SHA_256                 12
#define CALG_SHA_256            (ALG_CLASS_HASH | ALG_TYPE_ANY | ALG_SID_SHA_256)
 
int main(void)
{
    const char *fname = "E:\\disasm.txt";
    const char *fname2 = "E:\\CryptEncrypt.txt";
    HANDLE hFile = CreateFile(fname, GENERIC_READ | GENERIC_WRITE, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
    HANDLE out = CreateFile(fname2, GENERIC_READ | GENERIC_WRITE, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
    if(INVALID_HANDLE_VALUE == hFile || INVALID_HANDLE_VALUE == out) { //OPEN_ALWAYS
        printf("fileMappingCreate - CreateFile failed, fname = %s\r\n", fname);
        getchar();
        return 0;
    }
 
    DWORD dwFileSize = GetFileSize(hFile, NULL);
    if(dwFileSize == INVALID_FILE_SIZE) {
        printf("fileMappingCreate - GetFileSize failed, fname = %s\r\n", fname);
        CloseHandle(hFile);
        CloseHandle(out);
        getchar();
        return 0;
    }
 
    HANDLE hMapping = CreateFileMapping(hFile, NULL, PAGE_READWRITE, 0, 0, NULL);
    if(hMapping == NULL) {
        printf("fileMappingCreate - CreateFileMapping failed, fname = %s\r\n", fname);
        CloseHandle(hFile);
        CloseHandle(out);
        getchar();
        return 0;
    }
 
    unsigned char* dataPtr = (unsigned char*)MapViewOfFile(hMapping, FILE_MAP_ALL_ACCESS, 0, 0, dwFileSize);
    if(dataPtr == NULL) {
        printf("fileMappingCreate - malloc failed, fname = %s\r\n", fname);
        CloseHandle(hMapping);
        CloseHandle(hFile);
        CloseHandle(out);
        getchar();
        return 0;
    }
 
    HCRYPTPROV  hProv = { 0 };
    HCRYPTKEY   hKey = { 0 };
    HCRYPTHASH  hHash = { 0 };
 
    char pKey[] = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA";
 
    CryptAcquireContext(&hProv, NULL, NULL,PROV_RSA_AES, CRYPT_VERIFYCONTEXT);
    CryptCreateHash(hProv, CALG_SHA_256, 0, 0, &hHash);
    CryptHashData(hHash, (BYTE *)pKey, strlen(pKey), 0);
    CryptDeriveKey(hProv, CALG_AES_192, hHash, CRYPT_EXPORTABLE, &hKey);
 
 
    if(!CryptEncrypt(hKey, 0, TRUE, 0, (PBYTE)dataPtr, &dwFileSize, dwFileSize))
    {
        printf("%s\r\n", strerror(errno));
    }
 
    WriteFile(out, dataPtr, dwFileSize, &dwFileSize, NULL );
 
    printf("complete");
 
    getchar();
 
    CryptDestroyHash(hHash);
    CryptDestroyKey(hKey);
    CryptReleaseContext(hProv, 0);
    UnmapViewOfFile(dataPtr);
    CloseHandle(hMapping);
    CloseHandle(hFile);
    CloseHandle(out);
 
    return 0;
}


Вернуться к обсуждению:
Не выполняется CryptEncrypt (Си) C++ WinAPI
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.05.2019, 13:01
Готовые ответы и решения:

Шифрованием файла CryptEncrypt
Всем привет. Пишу код для шифрования файла по средством CryptEncrypt. Отображаю файл в...

Код не выполняется в одном месте, но выполняется в другом
Вот код процедуры: LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)...

Проект выполняется на Windows 8, но не выполняется на виртуальной машине
У меня есть проект, собранный в релиз, в котором осуществляется внедрение своей dll в память чужих...

не выполняется запрос в коде, но выполняется в phpliteadmin
всем привет! необходима небольшая помощь, есть бд с таблицей &quot;keys&quot; и одной из колонок в ней -...

2
08.05.2019, 13:01
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.05.2019, 13:01
Помогаю со студенческими работами здесь

Нужно передать файл, расположенный на рабочей станции, на которой выполняется сервер, на рабочую станцию​​, на которой выполняется клиент. MailSlot
Ребята. Нужна помощь. Нужно передать файл, расположенный на рабочей станции, на которой...

Вывести на экран "условие выполняется", если все элементы массива положительные и "условие не выполняется", если это не так.
1)Тип массива вещественный.Число элементов 11. Вывести на экран &quot;условие выполняется&quot;, если все...

Выполняется и if и else
Есть форма загрузки сразу нескольких изображений. Метод передачи формы POST. Всем инпутам дан...

Не выполняется if
Почему может не выполняться оператор if? Ни одна ветка не исполняется, ни истинная, ни ложная....

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru