Page 8 of 12

Re: Начинающий

Posted: Fri Nov 30, 2012 1:23 am
by GerdtR
Мне уже приходила эта идея. В Колибри я так понял всего 2 шрифта(стандартных если считать). Вот только сложновато.

Re: Начинающий

Posted: Fri Nov 30, 2012 1:30 am
by SoUrcerer
А зачем такие сложности вообще?

Re: Начинающий

Posted: Fri Nov 30, 2012 2:21 am
by Leency
Понятно же - для переводчика, можно будет сделать моментальный перевод слова при наведении, при зажатой комбинации клавиш и т.д.

Re: Начинающий

Posted: Fri Nov 30, 2012 10:39 pm
by GerdtR
Абсолютно верно)) Но всё равно сложновато для мелкой утилиты. Может в будущем в сис. функциях что-то появится.

Re: Начинающий

Posted: Fri Nov 30, 2012 10:48 pm
by Leency
Написал 2 варианта strcpy, оба рушат браузер, какие ошибки?

Code: Select all

void strcpy(dword to, from)
{
	int i;
	for(i=0; from[i]!=NULL; i++) to[i]=from[i];
	to[i]=NULL;
}

Code: Select all

void strcpy( ESI, EDI)
{
      while (EDI)
      {
          ESI = EDI;
          ESI++;
          EDI++;
      }
     ESI = NULL;
}

Re: Начинающий

Posted: Fri Nov 30, 2012 11:11 pm
by johnfound
Потому что копируешь dword, а конец стринга может быть байт 0.

Re: Начинающий

Posted: Fri Nov 30, 2012 11:31 pm
by Leency
Надо void strcpy(char to, from)?

Re: Начинающий

Posted: Sat Dec 01, 2012 12:04 am
by SoUrcerer
При условии, что char не переопределен и равен 1 байту - да.

Re: Начинающий

Posted: Sun Dec 16, 2012 4:25 am
by GerdtR
Надобно в оп. памяти выделить кусок именно в определенном участке. Что бы я сам определил указатель на выделенную память. Как это сделать? Пробовал напрямую писать, но прога вырубалась.

Re: Начинающий

Posted: Sun Dec 16, 2012 5:08 am
by Serge
GerdtR
Выделить большой блок 68.12, чтобы адрес был гарантировано в его пределах. И дальше делить его самостоятельно.

Re: Начинающий

Posted: Sun Dec 16, 2012 12:15 pm
by SoUrcerer
Мне прям страшно, почему именно в определенном участке кусок надо, если не секрет?

Re: Начинающий

Posted: Sun Dec 16, 2012 4:29 pm
by GerdtR
Хочу запустить вин. блокнот в Колибри. Это цель номер 1.

Re: Начинающий

Posted: Sun Dec 16, 2012 6:04 pm
by SoUrcerer
Блокнот - сложнее, чем Калькулятор. Совет номер раз.
Второе - PE можно загружать и без этого - там специально таблица релокаций есть.

Re: Начинающий

Posted: Sun Dec 16, 2012 10:07 pm
by Serge
SoUrcerer
Релокации в длл, экзешники обычно без релокаций.

Re: Начинающий

Posted: Sun Dec 16, 2012 10:27 pm
by SoUrcerer
Ну wine же их как-то грузит? Хотя он ставит какой-то пакет для поддержки pe, вроде...
GerdtR, сделать эмуляцию BSD syscalls было бы перспективнее, мне кажется.