Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
 Аватар для san-trane
6 / 6 / 2
Регистрация: 16.03.2011
Сообщений: 203

запись в dll

13.10.2011, 18:34. Показов 1993. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
всем привет!) помогите пожалуйста с задачей
есть пароль, который нужно записать в dll файл с шифрованием в md5. и при вводе пароля прочитать его оттуда. помогите кодом пожалуйста
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
13.10.2011, 18:34
Ответы с готовыми решениями:

Запись из внедренной dll в другую dll этого процесса
main.cpp #include <Windows.h> extern int writeprocess(); DWORD WINAPI MainThread(LPVOID lpParam) { ...

Ошибка об отсутствии MSVCP140D.dll, ucrtbased.dll, CONCRT140D.dll, VCRUNTIME140D.dll
Добрый день, товарищи. Возникла проблема. Делаю программу с использованием openCV 3.1 на Visual Studio 2013. При компиляции выдает ошибку...

Запись в файл из dll
Здравствуйте! у меня возникла такая проблема: не могу записать в файл из dllки которая содержит фильтрующую функцию хука, хендл файла...

9
 Аватар для Danvern
41 / 40 / 5
Регистрация: 22.06.2010
Сообщений: 415
Записей в блоге: 1
13.10.2011, 19:02
так то это не реально взять и что засунуть в dll
0
 Аватар для san-trane
6 / 6 / 2
Регистрация: 16.03.2011
Сообщений: 203
13.10.2011, 19:12  [ТС]
то есть запись в dll никак не производится??
0
 Аватар для Danvern
41 / 40 / 5
Регистрация: 22.06.2010
Сообщений: 415
Записей в блоге: 1
13.10.2011, 19:14
нет...
DLL - это просто набор функций.
0
Почетный модератор
Эксперт .NET
 Аватар для NickoTin
8729 / 3681 / 404
Регистрация: 14.06.2010
Сообщений: 4,513
Записей в блоге: 9
13.10.2011, 19:18
san-trane, сделать это можно, но есть вопрос от которого зависит получится ли это:
Когда нужно писать в DLL: единожды (например после компиляции) или в любой момент?
0
 Аватар для san-trane
6 / 6 / 2
Регистрация: 16.03.2011
Сообщений: 203
13.10.2011, 19:34  [ТС]
в dll нужно писать, при смене пароля, чтобы пароль сменил записал и все, а потом при каждой смене
0
 Аватар для Петррр
6721 / 3570 / 900
Регистрация: 28.10.2010
Сообщений: 5,937
13.10.2011, 19:36
san-trane, обычный файл не релит уже что ли?
0
 Аватар для san-trane
6 / 6 / 2
Регистрация: 16.03.2011
Сообщений: 203
13.10.2011, 19:39  [ТС]
хочется просто пароль запихать так чтобы его никто не нашел + шифрование в md5
ну хотя бы как сделать чтобы в txt записать и в md5 зашифровать?
0
Почетный модератор
Эксперт .NET
 Аватар для NickoTin
8729 / 3681 / 404
Регистрация: 14.06.2010
Сообщений: 4,513
Записей в блоге: 9
13.10.2011, 20:10
Записать(*) в DLL можно только до того как она будет загружена в АП процесса, т.е. до первого обращения к DLL из исполняемого файла (EXE).
Вот пример записи хэша в MS-DOS stub, который находится в начале DLL. Для понимания кода (очень) желательно изучить PE спецификацию.
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
// Writing hash of something to dll's MS-DOS stub
if ( File.Exists( "SomeYour.dll" ) )
{
    using ( var fs = File.Open( "SomeYour.dll", FileMode.Open,
                        FileAccess.ReadWrite ) )
    using ( var md5 = MD5CryptoServiceProvider.Create() )
    {
        int e_lfanew = 0x3C; // PE->e_lfanew offset
        int length   = 0; // length of MS-DOS stub
 
        // buff: Value of PE->e_lfanew field in PE structure
        var buff = new byte[sizeof( int )];
        // some data
        var data = Encoding.Default.GetBytes( "Some secret info" );
        // hash
        var hash = md5.ComputeHash( data );
 
        fs.Seek( 0x3CL, SeekOrigin.Begin ); // PE->e_lfanew offset
        fs.Read( buff, 0, buff.Length );
 
        // length of MS-DOS program stub ("free space" for us)
        length = BitConverter.ToInt32( buff, 0 ) - e_lfanew;
 
        if ( length > 0 && length > hash.Length )
        {
            // write hash to "free space"
            fs.Write( hash, 0, hash.Length );
            fs.Flush();
        }
    }
}
Вот для чтения:
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
// Reading hash of something from dll's MS-DOS stub
if ( File.Exists( ".\\clInfo.dll" ) )
{
    using ( var fs = File.Open( ".\\clInfo.dll", FileMode.Open,
                        FileAccess.ReadWrite ) )
    {
        int e_lfanew = 0x3C; // PE->e_lfanew offset
        int length   = 0; // length of MS-DOS stub
 
        // buff: Value of PE->e_lfanew field in PE structure
        var buff = new byte[sizeof( int )];
        // hash buffer
        var hash = new byte[16 /* md5 hash size */];
 
        fs.Seek( 0x3CL, SeekOrigin.Begin ); // PE->e_lfanew offset
        fs.Read( buff, 0, buff.Length );
 
        // length of MS-DOS program stub ("free space" for us)
        length = BitConverter.ToInt32( buff, 0 ) - e_lfanew;
 
        if ( length > 0 && length > hash.Length )
        {
            // read hash from "free space"
            fs.Read( hash, 0, hash.Length );
        }
    }
}
* - в коде используются права доступа к файлу ReadWrite, т.е. и чтение и запись, поэтому прочитать из DLL удастся только до первого обращения к DLL.

Добавлено через 1 минуту
Цитата Сообщение от san-trane Посмотреть сообщение
хочется просто пароль запихать так чтобы его никто не нашел + шифрование в md5
Если Вы думаете что записав его в DLL у Вашего приложения повысится безопасность (устойчивость к взлому), то Вы ошибаетесь.
0
 Аватар для san-trane
6 / 6 / 2
Регистрация: 16.03.2011
Сообщений: 203
13.10.2011, 20:19  [ТС]
блин, ну ладно, тогда думаю с dll я не стану делать
а как хотя бы в md5 шифровать при записи в текстовый фал?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
13.10.2011, 20:19
Помогаю со студенческими работами здесь

DLL Чтение\запись
Знаю что тут много тем про работу и написание DLL но увы помогите! 1. Как из DLL читать значение переменных - допустим в dll(моей) есть...

Не работает запись в файл из DLL
Здравствуйте!! Я пытаюсь реализовать хук WH_CBT; хук срабатывает, но по непонятной причине обработчик не пишет ничего в лог-файл. Вот...

Запись данных в Dll-файл
Подскажите пожалуйста, как можно записать данные в DLL-файл, а потом считать их.

Запись с использованием BASS.dll
Доброго времени суток. По данной теме ничего толкового не нашёл. Поэтому прошу дать все процедуры и функции для начала записи, остановки,...

Bass.net.dll Запись в wav
Привет еще раз) создаю уже вторую тему по поводу этой библиотеки (мучаюсь уже второй день). В общем mp3 файл переконвертировать в wav....


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
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-код на мобильном. Вращайте камеру одним пальцем,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru