zoukankan      html  css  js  c++  java
  • 添加/删除/读写c盘文件——c#

    一、前言:

      有时候我们为自己的程序添加配置文件,如tet、ini、xml等文件,又或者保存软件运行时的日志

      当我们把软件打包后,默认安装在c盘,而配置文件也会跟随生成在安装目录下

      此时你会发现,配置文件无法生成/修改

      这是因为操作c盘文件需要管理员身份

    二、有两种方法可以达到目的,一种是修改安装后的软件属性,另一种是修改打包前的程序属性

      方法一:修改安装后的软件属性

      步骤:1.右键软件选择属性

                      2.选择兼容性目录栏

         3.勾选以管理员身份运行此软件

                         

      总结:此方法操作简单,不用重新打包,对只有一次安装该软件比较友好,但如果需要多次安装,就显得很繁琐,没安装一次都要去修改一次,发行                   给别人不推荐 

    方法二:在vs修改打包前的程序属性

      步骤:1.查看自己项目的Properties是否有app.manifest,如果有,直接跳到第3步

                                        

          2.如果没有第1步所说的文件,则右键项目——>属性——>安全性——>勾选启动ClickOnce安全设置选项

                                

          3.双击打开Properties下的app.manifest文件,按照按照注释把requestedExecutionLevel 节点的 level="asInvoker"

                       替换成level="requireAdministrator" 即可

         其中权限解析如下:

            (1)asInvoker 当前权限,可以理解为只有一般用户的权限;
            (2)requireAdministrator           管理员权限,如果运行此程序的账户没有管理员权限则直接不运行;
            (3)highestAvailable 用户所能拿到的最高权限,如果用户不是管理员也会运行。

         下图是修改后的截图:

                    

         4.把步骤2的ClickOnce取消掉:右键项目——>属性——>安全性——>取消勾选启动ClickOnce安全设置选项

          如果不取消,会报错误:“ClickOnce 不支持请求执行级别“requireAdministr”“

      总结:此方法从根部解决问题,虽然繁琐,而且需要重新打包,但是可以一劳永逸

  • 相关阅读:
    学习笔记:松弛
    学习笔记:可持久化线段树
    poj 3784 Running Median
    学习笔记:树状数组
    poj 2823 Sliding Window 题解
    学习笔记:状态压缩DP
    学习笔记:单调队列
    C++ 竞赛常用头文件
    mongodb lock 出毛病时解决方法
    ag使用需要注意的问题
  • 原文地址:https://www.cnblogs.com/eve612/p/14255179.html
Copyright © 2011-2022 走看看