Показать сообщение отдельно

  #9  
Старый 19.05.2009, 23:42
/^scriptor$/
Новичок
Регистрация: 11.04.2009
Сообщений: 13
С нами: 8991359

Репутация: 0
По умолчанию

нашел решение.
Код:
// Параметры для минимизации размера EXE-файла.
#pragma comment(linker,"/MERGE:.rdata=.data")
#pragma comment(linker,"/MERGE:.text=.data")
#pragma comment(linker, "/SECTION:.text,EWR")
#pragma comment(linker, "/NODEFAULTLIB")
#pragma comment(linker, "/ENTRY:main")
HINSTANCE получаем слудующим образом:
Код:
HINSTANCE hInst = GetModuleHandleA(NULL);
Вместо функций srtlen и strcat юзам винапишные lsrtlen и lstrcat.

Вместо memset:
Код:
void dg_memset(void* output, int value, int len)
{
  if (len)
  {
    do
    {
      *(unsigned char*)output = (unsigned char)value;
      output = (void*)((unsigned int)output + 1);
    }while(--len != 0);
  }
}
memcpy:
Код:
void dg_memcpy(void* output, void* input, int len)
{
  if (len)
  {
    do
    {
      *(unsigned char*)output = *(unsigned char*)input;
      input  = (void*)((unsigned int)input  + 1);
      output = (void*)((unsigned int)output + 1);
    } while (--len != 0);
  }
}
 
Ответить с цитированием