标题:b.exe调用a.exe的fopen问题
取消只看楼主
lyl930130
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:323
专家分:111
注 册:2013-5-13
结帖率:91.43%
已结贴  问题点数:20 回复次数:1 
b.exe调用a.exe的fopen问题
a.exe:
#include<stdio.h>
#include<string.h>
#include<stdlib.h>

int main()
{
    FILE *fr;
    fp=fopen("a.int","rb");
    if(fp==NULL)
        printf("error fopen");
    else
        printf("success fopen");
    return 0;
}

b.exe:
#include<stdio.h>
#include<string.h>
#include<stdlib.h>

int main()
{
    system("........\\a.exe");//a.exe的绝对路径
    return 0;
}

windows7
当a.exe和b.exe在同一个文件夹下时,  调用b.exe输出 success fopen
当a.exe和b.exe不在同一个文件夹下时,调用b.exe输出 error fopen,调试发现错误为找不到该文件

为什么都用的绝对路径,在同一个文件夹下能成功打开文件,在不同文件夹就不行。

[此贴子已经被作者于2018-8-7 10:08编辑过]

搜索更多相关主题的帖子: exe 调用 fopen include 文件夹 
2018-08-07 10:02
lyl930130
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:323
专家分:111
注 册:2013-5-13
得分:0 
回复 2楼 rjsp
a.ini和a.exe始终保持在同一个文件夹的,主要是a.exe和b.exe在同一个文件夹下可以打开a.ini,如果把b.exe放在其他路径就提示找不到a.ini

试了版主说的方法,在a中增加输出当前路径的函数。
a在a目录,b在b目录,b调用a,输出的是b的路径不是a的路径。



[此贴子已经被作者于2018-8-9 11:42编辑过]

2018-08-09 10:58



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-489068-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.291909 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved