LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 952|回复: 1

[菜鸟贴]execv为何不能执行gtk+的程序?

[复制链接]
发表于 2004-2-12 10:21:38 | 显示全部楼层 |阅读模式
#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/wait.h>

main()
{
        pid_t pid;
        if ((pid=fork())<0)
                printf ("fork error");
        else if (pid ==0){
                if (execv ("/home/josfar/base",NULL)<0)
                        printf ("execv error");
        }
        if (waitpid (pid,NULL,0)<0)
                printf ("waitpid error");
        exit (0);
}
    其中base是用gtk+编的程序,有图形界面。把上面这段程序编译运行了之后却没有任何反应,base并没有运行,请问这是为什么?谢谢。
发表于 2004-2-12 13:03:06 | 显示全部楼层
if (!stat("/usr/local/bin/d4x", &s))
+        {
+           if(fork()==0)
+           {
+              newargv[0]="/usr/local/bin/d4x";
+              newargv[1]="-a";
+              newargv[2]=location;
+              newargv[3]=NULL;
+              execv(newargv[0],newargv);
+           }                       
+        }
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表