Нет, ну я так не могу. Пусть она пока работает, но я должен разобраться с каждой непонятной мне деталью.
jack_theripper > Когда ты пишешь addr label, компилятор компилирует это так: Код (Text): lea eax, label push eax Отсюда и сообщение - значение регистра (eax) изменено макрокомандой invoke. (он же присутствует левее в списке аргументов) Можно делать так: Код (Text): ;invoke CreateThread,NULL,NULL,eax,hwind,0,ADDR ThreadID push ecx invoke CreateThread,NULL,NULL,eax,hwind,0,esp pop ecx ;ThreadID в ecx > Нет, тебе важно лишь её значение. можно его хранить хоть 20 раз в разных местах (только зачем). Если у тя она хранится стэке (локальная) то просто передавай это значение в трэд. Если же она объявлена в .data (глобальная), то передавать ничего никуда не нужно - просто используй во втором трэде и всё.
Аааа, понял. Эта падлюка теперь за меня lea вставляет. Ясен перец! Ну я так и хотел сделать (и сделал в итоге), но мне мешала эта фигня с [hwind]. Пока не ткнули носом в эти скобки, так я и писал бы hwind или addr hwind.
А я уже сделал даже временную остановку и опять запуск этой нити. Клевая весчь!!! Ща буду разбираться как в файл записать последний просчитанный серийник и чтобы при запуске вытаскивала его оттуда. Ооох...