【问题标题】:How to open file in same directory with c++?如何用c ++打开同一目录中的文件?
【发布时间】:2013-11-17 03:23:42
【问题描述】:

我目前正在使用此代码打开 c:\ 目录中的文件。但是我必须将“aimagem.bat”放在目录中才能正常工作。

ShellExecute ( 0,"open","C:\\aimagem.bat.",NULL,NULL,SW_NORMAL);

如果“aimagem.bat”位于我的项目所在的同一文件夹中,有没有办法打开它? 提前致谢。

【问题讨论】:

    标签: c++ file-io directory


    【解决方案1】:

    是的,将 "C:\\aimagem.bat" 替换为 "aimagem.bat""./aimagem.bat"

    【讨论】:

    • 尽可能避免使用相对路径。检索调用应用程序的文件夹会更安全,例如调用GetModuleFileName(),然后删除最后一个斜杠后的所有内容,然后将所需的文件名附加到它,然后执行该完整路径。
    • @RemyLebeau 嗯.. 为什么会这样?为什么要避免相对路径? (试图向你学习一些东西)..
    • 可以利用相对路径。所有人所要做的就是删除原始文件并将他们自己的文件与重复文件名放在搜索路径的其他位置,然后您将打开/执行错误的文件。特别是在执行文件时非常危险,因为这可能导致恶意代码运行。因此,如果您希望文件位于特定位置,请仅从该特定位置打开/执行它,不要让系统寻找文件,因为它可能会找到您不想要的东西。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-07
    • 2021-05-20
    • 1970-01-01
    • 2015-06-29
    • 2012-11-26
    相关资源
    最近更新 更多