Я пытаюсь использовать CreateProcess для выполнения внешнего процесса из приложения C++.CreateProcess игнорирует рабочий каталог lpCurrentDirectory/parent
Запущенное приложение выходит из строя при поиске dll, которые существуют в его каталоге.
Проверка процесса выполнения с помощью Process Explorer (из sysinternals) показывает, что рабочий каталог процесса - c: \ windows, а не рабочий каталог родителей.
Использование lpCurrentDirectory для жесткого кода рабочий каталог также не помогает.
Процесс выполняется надлежащим образом, используя системную команду.
EDIT Проблемный каталог не является каталогом модулей, а текущим рабочим каталогом.
каталог модулей ищется, как и ожидалось, но не содержит DLL (Копирование СРЛ в каталог модулей работает бут это, са обходной путь)
Первое место, которое выглядит для Windows при загрузке библиотеки DLL это каталог, где исполняемый модуль, который был загружен с. Если ваши DLL-файлы есть, они будут найдены. Проблема явно не совсем то, что вы думаете. –