Ошибка: "Не удалось запустить это приложение, так как libufun.dll не был найден".

ОС: Windows XP

IDE: Visual Studio 2005

Язык: C / C++

Кодирование: Unigraphics NX (тип программного обеспечения САПР), в частности, внешняя автоматизация в Open C (но это может быть не важно)

Я пытаюсь закодировать внешнюю программу для NXOpen - что для тех, кто с ней не знаком, означает, что она работает в Windows, а не в NX (которая будет внутренней программой). Я решил закомментировать все интересные вещи и просто протестировать их, используя некоторые операторы printf, чтобы убедиться, что все правильно связано.

По-видимому, это хорошая вещь, которую я сделал, потому что, когда я пытаюсь запустить сгенерированный файл.exe, я получаю ошибку "Это приложение не удалось запустить, потому что libufun.dll не был найден. Повторная установка приложения может решить эту проблему. " libufun.dll принадлежит библиотеке UG.

Из того, что я прочитал, файл может быть поврежден. Тем не менее, он также может просто иметь некоторую странную проблему со связыванием (что со всеми этими странными библиотеками), и я хочу искать проблемы такого рода, прежде чем пытаться найти новую копию файла. Я уже проверил, что путь Linker->General->Additional Library Dependencies правильный, и что связанная системная переменная не изменилась. Там все хорошо.

Что-нибудь еще, что я должен проверить или сделать, чтобы сделать эту работу?

Спасибо!

2 ответа

Решение

1) найдите libufun.dll, поместите его в одну папку с вашим.exe
2) Мой компьютер - Свойства - Дополнительно - Переменные среды, отредактируйте переменную PATH, добавьте каталог, содержащий libufun.dll, в PATH
3) установить PATH с каталогом, содержащим libufun.dll внутри IDE
Если вы подключились динамически (как вы сделали), эта dll должна быть в PATH или рядом (в той же папке) с вашим exe файлом при каждом запуске этого приложения.
Если вам это не нравится, вы должны статически ссылаться с соответствующими.lib файлами, таким образом, вам не понадобится dll.

Есть переменная окружения UGII_ROOT_DIR, Найдите эту переменную и добавьте ее в PATH переменная, чтобы заставить проект работать.

PATH=%PATH%;%UGII_ROOT_DIR%;

Основные переменные среды, которые управляют Unigraphics NX: UGII_BASE_DIR а также UGII_ROOT_DIR, UGII_BASE_DIR папка, в которой установлен NX UGII_ROOT_DIR папка, в которой находятся все исполняемые файлы Когда NX установлен, эти две переменные среды создаются.

Другие вопросы по тегам