| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: WinAPI и системное программирование > Запустить программу вторым потоком под Windows 7 |
| Автор: ConstantinXXX 15.7.2011, 17:00 | ||
| Всем доброго времени суток )) надо запустить один исполняемый файл exe внутри другой программы вторым потоком. Сразу напешу это надо не для троянов и т.п., надо в своей программе запустить вторым потоком свою же программу. Это надо для разработки программы протектора. Дело в том, что для XP и Vista программу написал, но для Windows 7 тот же код не работает. :( это наверное связано с защитой внедренной с семеркой. привожу кусок кода:
может кто знает что можно сделать? |
| Автор: Snowy 15.7.2011, 19:27 |
| Ну раз обе программы свои, то можно создать во второй отдельную функцию для запуска и экспортировать ее. А в первой программе подключить вторую, как dll, создать отдельный тред и запустить в нем на выполнение стартовую функцию. |
| Автор: ConstantinXXX 15.7.2011, 22:19 |
| вторая программа зашифрована, она расшифровывается первой программой и по идеи должна запуститься вторым потоком в первой же программе... Тут возникает проблема в том, что до расшифровки запустить стартовую функцию не получиться. :( |
| Автор: Snowy 15.7.2011, 23:18 |
| Можно расшифровать в память и подключить уже из памяти. Где-то на форуме пробегали решения, как подключить dll из памяти. Вот http://uinc.ru/files/ есть класс TFakeDll. Там уже все реализовано. Нужно только предварительно расшифровать файл в память. |
| Автор: ConstantinXXX 16.7.2011, 14:59 |
| Snowy, спасибо большое вообще я использую последний протектор сделанный на базе вот этого: http://www.delphibasics.info/home/delphibasicscounterstrikewireleases/opencrypterbyp0ke это как бы и есть первая программа в которую засовываю другую. Проблема, что он не работает на windows 7 :( нашел обсуждение этой проблемы на одном забугорном форуме http://www.opensc.ws/delphi-help/13352-help-64bit-resumethread.html они там пишут, что это из - за того, что win 7 x 64 и упоминается ссылка на якобы решение проблемы вот эта: http://www.delphibasics.info/home/delphibasicssnippets/uexecfrommembysteve10120-fixedforwin7x64bytestest только вот я не совсем понял как это можно использовать... :( |
| Автор: Snowy 18.7.2011, 10:21 |
| Стартовую функцию ты должен написать сам и проэкспортировать ее. В качестве содержимого можно тупо скопировать из dpr. Чем она там закрыта - не важно. Секцию экспорта шифровать никто не станет. Да и вообще лучше переделать ее в dll - напрямую все равно запускать никто не будет. |