PDA

Просмотр полной версии : Где можно почитать про создание конфигураторов?


X-lord
01.08.2007, 16:12
исходник (с\с++,дельфи) желательно...

sni4ok
01.08.2007, 16:57
исходник (с\с++,дельфи) желательно...

что ты подразумеваешь под кофигураторами?

если хранение настроек, то посмотри например на boost::serialization
http://www.boost.org/libs/serialization/doc/index.html

а если тебе нужно и gui, то можешь например начать изучать wxWidgets или Qt.

W!z@rD
01.08.2007, 17:23
если про троев, то качай исходники Latinus...
Delphi...

X-lord
02.08.2007, 02:58
что ты подразумеваешь под кофигураторами?

установка значений констант внутри подопытного
возможно метаморф... если возможно...

drmist
02.08.2007, 11:35
X-lord
Пишите в программе
DWORD dwConst = 0xAABBCCDD;

потом открываете прогу в HexWorkshop, ищите смещение константы. Конфигуратору требуется только открыть программу на запись и по нужному смещению написать нужное значение.

Тоже самое со строками, только нужно дополнять их некоторым количеством нулей в конце, чтобы строки разной длины вписать можно было.

_Great_
02.08.2007, 11:55
Тоже самое со строками, только нужно дополнять их некоторым количеством нулей в конце, чтобы строки разной длины вписать можно было.
Реализуется кстати довольно банально

char szString[256] = "Hello, World";

После "Hello, World" будут нули.

da_ff
02.08.2007, 12:30
я кагда то так делал

#include "stdio.h"
#include "windows.h"
#define LEN 64

void insert(char *str,FILE *in,FILE *out)
{
long incurpos=ftell(in);
long outcurpos=ftell(out);
char *buf=new char[LEN];
*buf='#';
fread(++buf,1,LEN-2,in);
buf--;
buf[LEN-1]='\0';
if(!strcmp(buf,"################################################## ##########"))
{
strcpy(buf,str);
fwrite(buf,1,LEN-2,out);
}
else
fseek(in,incurpos,SEEK_SET);
return;
}

int main(int argc, char *argv[])
{
if(argc<3)return 0;
char name[128],str[LEN],buf[1];
strcpy(name,*(argv+1));//strcpy(name,"TestConsole.exe");
strcpy(str,*(argv+2));//strcpy(str,"da_ff");
FILE *in,*out;
if(!(in=fopen(name,"rb")))return 0;
if(!(out=fopen(strcat(name,".exe"),"wb")))return 0;
while(fread(buf,1,1,in))
{
if(buf[0]=='#')insert(str,in,out);
fwrite(buf,1,1,out);
}
fclose(in);
fclose(out);
printf("ok");
return 0;
}

а в подопытном должна быть строка "################################################## ##########" =)