Итак, у меня вопрос к кодерам и программистам: как написать небольшую прогу, которая с использованием графического интерфейса позволяет редактировать текстовики и ключи реестра. Например, запускаешь эту прогу, там строка, а напротив неё контекстное меню с возможностью выбора параметров, как лаунчер hlfx single. Если не трудно и не жалко, поделитесь кодом(только чтобы и реестр можно было править).
Да без проблем Советую использовать Borland C++Builder, а то в студии там мучатся с ресурсами прийдётся. Билдер легче ,да и другой язык уить не прийдётся.
Там (ИМХО) один из самых продивинутых конструкторов форм. (если я не ошибаясь лаунчер фх сингла написан на Borland delphy, хотя возможно и ошибаюсь )
Реестр?
C++ Source Code:
1
#include <registry.hpp>
2
...
3
TRegistry *reg = new TRegistry(KEY_ALL_ACCESS);
4
if (reg) // если всё ОК
5
{
6
// выбираем нужный корень
7
reg->RootKey = HKEY_LOCAL_MACHINE;
8
9
// открываем секцию
10
reg->OpenKey("Software\\Sources.RU\\", true);
11
12
// удаляем ключ
13
reg->DeleteValue("some_key");
14
15
// записываем значения
16
reg->WriteString("name","my_text");
17
18
// проверяем наличие ключа "vot"
19
if (KeyExists("vot")==false)
20
{
21
// ругаемся
22
ShowMessage("А куда vot'а дели?");
23
}
24
25
// закрываем секцию
26
reg->CloseKey();
27
}
28
29
delete reg;
30
А работу с текстовиками можно как и стандартную c++, как и билдеровскую если надо муго описать в кратце.
Тренсфер чуть-чуть поподробнее плз. (и про текстовики, только чтоб формат можно было самому задавать, например .res или .cfg) А мне теперь придётся ставить С++ Буилдер, который у мну уже 2 года валяется на полке(много чего я перепробовал, до того как нашёл бузеровский компилятор)
Скачай на http://www.sources.ru/ "Borland C++ Builder FAQ"
Там много всяких полезностей в том числе работа и с бинарными файлами(представляешь какие возможнрости открываются ).
Добавлено 23-12-2007 в 20:13:
С кфг файлами просто работаем также как и с текстовыми. Вот пример создания файл сейва из книги про создание пасьянса на с++
C++ Source Code:
1
AnsiString myfile="с:\\game.sol"; //есть в билдере такой тип данных как строки -очень удобно.
2
//мы можем создать с любым доступным разрешением !
3
int iFile;
4
iFile=FileCreate(myfile);
5
Дальше проверяем создался ли файл и работаем с ним как с обычным текстовым, но нет смысла это описывать.
Но вот если ты хочешь использовать уже Готовые .res (сделаные например в студии) то как текстовый открыть их не получится (точнее получится но ты ивудишь тоже самое что открыв его блокнотом). Если ты просто хочешь использовать файлы с этим расширением как текстовые -то пожалуйста.
Что бы понять принцип работы с окнами в билдере можно почитать например это: http://www.infiltration.ru/p/base.htm
__________________
Хотелось бы, чтобы не только хотелось...
Ku2zoff А что там сложного ? Просто экзешник запускает ХЛ.ЕхЕ с опр параметрами , которые ты выбираешь через данный интерфейс
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
Я душу билдеру не продовал Если честно у меня стоит всё и билдер и студия и визуал студия 2003 и визуал бейсик и дельфи... Всё это что бы не было программерского косоглазия т.е. что бы не было привыкания к конкретной среде разработки. Юзаю взависимости от назначения прилоения, от времени и.т.д. Бывают ситуации когда надо на студии тщательно отделать, а бывают что на станартное прописание окон времени да и надобности нет.
MSteam офицально нельзя, не офицально можно
Прийдётся машинный код редактировать (или даже отладчиком) и вписывать своё, как это делают многие вирусы. Но тут куча подводных камней: если попытаться добавить готовый код в начало -прийдётся пересчитывать все смещения в остальных, на этот могут уйти годы. Можно попытаться добавить этот код в конце а из начала сделать вызов или прыжок на него. Незнаю как тут насчёт авторских прав вальв, но это точно будет считаться взломом hl.ехе.
Цитата:
MSteam писал: а можно hl.ехе включить внутрь ланчера?
одинаково сложно как и добавить код в сам hl.ехе так и добавить код из hl.ехе. Это по проведению будет одним и тем-же.
Цитата:
MSteam писал: А как передать параметры, которые были даны ланчеру, самой hl.ехе, которую мы через него запустим?
Считать их в лаунчере и передать в функции запуска CreateProcess, но зачем ?
__________________
Хотелось бы, чтобы не только хотелось...