安装到Program Files的应用程序是否有权修改其文件夹?

如果我将我的应用程序安装到程序文件中,它是否总是能够在其安装目录中创build和写入文件? 它似乎在许多不同版本的Windows中工作,但是有没有这种情况下,这将无法正常工作?

主要是我使用这种方法进行日志logging。 如果这不是正确的方法,有没有更好的地方login?

注意:我的安装程序需要pipe理员权限才能运行,并授予完全访问权限给安装目录中的所有用户。

应用程序不以用户身份运行,用户以用户身份运行。 如果您将应用程序安装到程序文件中,并且假设您需要提升权限才能这样做,那么当标准用户运行该应用程序时,那就是需要权限的用户。

  1. 应用程序使用提升的权限进行安装(例如,用户:Admin)
  2. AppName文件夹上的所有权限可能是“Admin:Full,Users:Read”
  3. 用户运行应用程序,所以不能更改任何文件

在安装时,安装程​​序需要知道哪些文件需要写入标准用户,并相应地设置权限。 当然,用户数据应该在Program Files中。 这通常是%appdata%和用户配置文件的目的。

如果您的应用程序具有globalsettings.ini或其他任何内容,位于“Program Files \ YourApp”中,则当您拥有管理员权限时(即在安装时),您需要将所有用户的写入权限授予该globalsettings.ini文件。 或高级用户。 还是一个组。 或者什么对你的应用程序是正确的。

总之, ,用户没有对ProgFiles的默认写入权限,也不应该这样做。

是的,肯定会遇到这种情况,比如您的应用在Windows 7上运行,或者您的用户帐户是受限用户。

我们总是把我们的日志文件放在一个临时目录或一个特殊的文件夹,比如AppData。