www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1996/11/12/06:59:27

From: P DOT Koshevoy AT m DOT cc DOT utah DOT edu (Paul Koshevoy)
Newsgroups: comp.os.msdos.djgpp
Subject: system(...) , spawnl(...)
Date: Mon, 11 Nov 1996 04:48:08 GMT
Organization: University of Utah
Lines: 23
Message-ID: <566b2b$9cl@news.cc.utah.edu>
NNTP-Posting-Host: ctsasync47.cc.utah.edu
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp

Hi !
I am writing a program which looks a lot like Norton Commander.
I have finished ( almost :-)  user interface and tried to make my
program launch other programs and got stuck . I have never done it
before , so I looked up some functions in TC++ help. I found
ins system(const char *)  and  int spawnl(int, char *, NULL)
functions. The problem is when I spawn a child program with either of
this functions the execution never gets back to parent . The child
process terminates but the parent process does not resume.
Here is a part of my code :

char * ext=filename[pos]->get_part2(0);
if( !strcmp(ext,"bat")  ||  !strcmp(ext,"BAT")  ||  !strcmp(ext,"EXE")
|| !strcmp(ext,"COM")  ||  !strcmp(ext,"exe")  ||  !strcmp(ext,"EXE"))
    {
        panel1->kill();
        panel2->kill();
        int result=system(filename[pos]->get_filename());
        panel1->refresh();
        panel2->refresh();
    }


- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019