что ты подразумеваешь под кофигураторами? если хранение настроек, то посмотри например на boost::serialization http://www.boost.org/libs/serialization/doc/index.html а если тебе нужно и gui, то можешь например начать изучать wxWidgets или Qt.
X-lord Пишите в программе DWORD dwConst = 0xAABBCCDD; потом открываете прогу в HexWorkshop, ищите смещение константы. Конфигуратору требуется только открыть программу на запись и по нужному смещению написать нужное значение. Тоже самое со строками, только нужно дополнять их некоторым количеством нулей в конце, чтобы строки разной длины вписать можно было.
Реализуется кстати довольно банально char szString[256] = "Hello, World"; После "Hello, World" будут нули.
я кагда то так делал Code: #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; } а в подопытном должна быть строка "############################################################" =)