2010-02-02 61 views
0

我创建了一个.properties文件,它包含几个简单的 key = value对。 我从一个示例C++控制台应用程序,使用导入的java类尝试了它,并且我能够访问它,没有问题。在哪里存储.properties文件在C++中使用dll

现在,我试图以同样的方式使用它,从另一个(非托管)C++项目调用的C++ dll。

由于某些原因,文件没有被访问。

也许我的文件位置不对。我应该在哪里存储它?

还有什么问题呢?

TIA

回答

1

正如你所说的“DLL”我猜你正在使用MS Windows。从DLL中找到一个文件,并独立于登录用户是一个受限制的项目。最好的方法是将文件存储在由环境变量ALLUSERSPROFILE组装的路径中。这是与所有用户相同的唯一位置,并且所有用户通常都具有写权限。您的应用程序数据应驻留在名为< MyCompany>或< MyApplicationsName>的私有子目录中。类型

echo %ALLUSERSPROFILE% 

在Windows命令行提示符上找出机器上的实际位置。

存储你的数据即:然后

%ALLUSERSPROFILE%\MyApp\ 

你的DLL可以使用GETENV查询ALLUSERSPROFILE的位置:

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

奏效。非常感谢你的帮助!:) – user228058 2010-02-03 14:45:37