Обманные программы на С - PullRequest
0 голосов
/ 29 августа 2009

Скажем, я запускаю программу из созданной мной программы. Можно ли обмануть запущенную программу, заставив ее думать, что каталог Windows находится в другом месте?

Ответы [ 4 ]

2 голосов
/ 29 августа 2009

Подделка местоположения каталога Windows, как правило, не то, что делается. Моя собственная реакция похожа на описанную выше, что это был бы рецепт катастрофы, если бы это было возможно.

Если бы вы могли объяснить свою ситуацию более подробно (возможно, в новом вопросе), возможно, были бы более эффективные предложения для решения вашей реальной основной проблемы.

2 голосов
/ 29 августа 2009

Если для определения каталога Windows используются переменные окружения %windir% или %systemroot%, их легко изменить. Но если он использует вызов API, вам придется перехватить этот вызов, как ChrisW предлагает . Вы можете взглянуть на Объезд .

1 голос
/ 29 августа 2009

Было бы сложно. Существует несколько системных API, которые программа может использовать для определения пути к каталогу Windows. Чтобы его обмануть, вам нужно было бы перехватить вызовы программы для любого API и вернуть другой результат.

Есть много статей о перехвате API в Windows: вот первая, которую я нашел с помощью Google: Обнаружена перехват API .

0 голосов
/ 29 августа 2009

Местоположение каталога Windows находится в реестре. Vista может позволить вам изменить его для каждого пользователя, но, насколько я знаю, это невозможно для каждого процесса.

...