vanceee 2024-09-13 15:35 采纳率: 0%
浏览 4

go 执行exe提示没有权限。

go 写了 个软件,合并进了一个exe, 打包成exe后, 执行了时候经常提示没权限是啥问题呢?

执行部分的代码

    dumpfile := helpers.GetFile("base.exe")
    args := []string{dumpfile, "-a", "-o", TempDir, "-p", strconv.Itoa(int(pid))}
    cmd := exec.Command(args[0], args[1:]...)
    cmd.SysProcAttr = &syscall.SysProcAttr{
        HideWindow: true,
    }
    output, err := cmd.CombinedOutput()
    if err != nil {
        helpers.LogToFile("Error executing command:" + err.Error())
        helpers.LogToFile("Output:" + string(output))
        return
    }

经常遇到输出提示如下

Error executing command:fork/exec C:\User\admin\AppData\Local\Temp\base.exe: Access isdenied.

这是啥问题?

  • 写回答

1条回答 默认 最新

  • 一轮明月照丘壑 2024-09-14 09:17
    关注

    以下回复参考:皆我百晓生券券喵儿等免费微信小程序作答:

    这个错误提示“Access is denied”(拒绝访问)通常意味着你的程序没有足够的权限来执行指定的操作。在你的情况下,问题可能出在尝试执行 base.exe 文件时。这可能是由以下几个原因造成的:

    1. 文件权限问题:可能 base.exe 文件或其所在的目录权限设置不正确。确保文件对执行者有适当的读、写和执行权限。在Windows上,你可以右键点击文件,选择“属性”,然后在“安全”选项卡中检查权限。
    2. 操作系统权限问题:如果你的程序以较低权限(例如非管理员权限)运行,可能无法访问某些资源或执行某些操作。尝试以管理员身份运行你的程序。
    3. 路径问题:确保 TempDir 路径是正确的,并且程序有权限在该路径下进行操作。如果路径中的某个目录没有写入权限,这也可能导致问题。
    4. 程序本身的问题:如果 base.exe 是第三方程序或库,可能存在某些已知的问题或兼容性问题。确保你使用的版本是最新的,并检查是否有关于此问题的官方说明或补丁。

    针对你的代码,你可以尝试以下解决方案:

    • 确保 base.exe 文件具有正确的权限。
    • 尝试以管理员权限运行你的程序。
    • 检查 TempDir 路径的权限,并确保程序可以写入该路径。
    • 如果可能,尝试在不同的操作系统或环境中测试你的程序,以确定问题是否特定于某个环境。

    如果问题仍然存在,你可能需要更深入地调试你的代码和涉及的外部程序,以确定具体的问题所在。

    评论

报告相同问题?

问题事件

  • 创建了问题 9月13日

悬赏问题

  • ¥15 如何在vue.config.js中读取到public文件夹下window.APP_CONFIG.API_BASE_URL的值
  • ¥50 浦育平台scratch图形化编程
  • ¥20 求这个的原理图 只要原理图
  • ¥15 vue2项目中,如何配置环境,可以在打完包之后修改请求的服务器地址
  • ¥20 微信的店铺小程序如何修改背景图
  • ¥15 UE5.1局部变量对蓝图不可见
  • ¥15 一共有五道问题关于整数幂的运算还有房间号码 还有网络密码的解答?(语言-python)
  • ¥20 sentry如何捕获上传Android ndk 崩溃
  • ¥15 在做logistic回归模型限制性立方条图时候,不能出完整图的困难
  • ¥15 G0系列单片机HAL库中景园gc9307液晶驱动芯片无法使用硬件SPI+DMA驱动,如何解决?