2010-02-02 9 views
0

Я создал файл .properties, который содержит несколько простых команд key = value. Я попробовал это из примера консольного приложения C++, используя импортированные классы Java, и я смог получить к нему доступ, без проблем.где хранить файл .properties для использования в dll C++

Теперь я пытаюсь использовать его так же, как и C++ dll, который вызывается другим (неуправляемым) проектом C++.

По какой-то причине к файлу не обращаются.

Возможно, неправильное расположение моего файла. Где я должен его хранить?

Что еще может быть проблемой?

ТИА

ответ

1

Как вы упоминаете "DLL" я предполагаю, что вы используете MS Windows. Поиск файла из DLL и независимо от зарегистрированного пользователя является ограниченным элементом. Лучший способ - сохранить файл в пути, собранном из переменной окружения ALLUSERSPROFILE. Это единственное место, которое равно всем пользователям и где все пользователи обычно имеют доступ на запись. Данные ваших приложений должны находиться в закрытом подкаталоге с именем < MyCompany> или < MyApplicationsName>. Тип

echo %ALLUSERSPROFILE% 

в командной строке окна командной строки, чтобы узнать фактическое местоположение на машине.

Храните данные т.е .:

%ALLUSERSPROFILE%\MyApp\ 

библиотеки DLL может затем запросить местоположение AllUsersProfile с помощью GetEnv:

char *allUsersData = getenv("ALLUSERSPROFILE"); 
+0

, что работал. большое спасибо за вашу помощь!:) – user228058