易语言自启动(注册到注册表)无法读取到配置文件,正常手动启动可以

看到c++有类似情况,说自启动的exe文件是在system32目录下运行,可是我的配置文件用的是绝对路径,竟也无法读取,如何解决

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 以下回答来自chatgpt:

    首先,要解决这个问题,我们需要确认配置文件的路径是否正确。可以使用以下代码来打印出当前工作目录:

    import os
    print(os.getcwd())
    

    如果打印的结果确实是在system32目录下,那么可以使用绝对路径指定配置文件的位置。但要确保你知道自启动程序在何处运行。如果自启动程序在用户的程序文件夹中运行,那么可以使用以下代码获取用户程序文件夹的路径:

    import os
    
    appdata_folder = os.getenv('APPDATA')
    

    接下来,你需要将配置文件的路径更改为正确的路径。可以使用以下代码将相对路径转换为绝对路径:

    import os
    
    config_file = 'config.txt'
    absolute_path = os.path.join(appdata_folder, config_file)
    

    最后,你可以尝试使用新的路径来读取配置文件。可以使用以下代码:

    config_data = ''
    
    try:
        with open(absolute_path, 'r') as file:
            config_data = file.read()
    except FileNotFoundError:
        print('未找到配置文件')
    
    print(config_data)
    

    这段代码会尝试打开配置文件并读取其中的内容。如果文件未找到,则会打印“未找到配置文件”。

    希望这些代码能帮助你解决问题。如果你仍然遇到困难,请告诉我详细信息,我会尽力提供更多的帮助。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^