VC++ _popen to call ftp and pipe output to a file, cannot open file?



 DEVELOP > c-Plus-Plus > VC++ _popen to call ftp and pipe output to a file, cannot open file?

LINK TO THIS PAGE  


rating :  0   |  0


  Page 1 of 1

1

 
Topic: DEVELOP > c-Plus-Plus
User: "Michael"
Date: 01 Dec 2004 02:38:11 PM
Object: VC++ _popen to call ftp and pipe output to a file, cannot open file?
Hello,
Not sure if this is the right message board but I have an interesting
problem.
Using Visual Studio .NET, C++, I want to write an all-encompassing C++
program to download new files from an FTP Server. The C++ program will
ftp to the server and download a list of files, match those files with
the ones I've already received, put together a new ftp script and
download.
I am using _popen to call FTP.
My problem is this, _popen calls ftp and pipes the output to a .txt
file, then the C++ program tried to open the .txt file and fails. It's
as if the C++ program is not waiting for the _popen to complete and
_popen still has the file open so my next statement to attempt opening
fails. Is there a way around this?
Here is a bit of my code:
// Call _popen and capture output for errors
FILE *pPipe;
char my_command[200];
sprintf(my_command,"ftp -v -i -s:%s >
%s",ftp_filename,output_filename);
if ((pPipe = _popen(my_command,"rt"))==NULL)
{
cout << "FTP FAILURE" << endl;
exit(1);
}
fclose(pPipe);
// Open Output File
sfile.open(output_filename,ios::in);
if(!sfile)
{
cout << "Could not open: " << output_filename << endl;
return -1;
}
The "if(!sfile)" is always TRUE, so the program fails.
Thanks in advance for the assistance!
.

User: "Ron Natalie"

Title: Re: VC++ _popen to call ftp and pipe output to a file, cannot openfile? 01 Dec 2004 03:50:57 PM
Michael wrote:

// Open Output File
sfile.open(output_filename,ios::in);

Does output_filename actually exist?
What is sfile? Hopefully it's an ifstream or such.

if(!sfile)
{
cout << "Could not open: " << output_filename << endl;

You might want to try GetLastError or some other Windows call that might
give you a better explanation of the failure.
.


  Page 1 of 1

1

 


Related Articles
 

NEWER

pg.1232     pg.940     pg.716     pg.544     pg.412     pg.311     pg.234     pg.175     pg.130     pg.96     pg.70     pg.50     pg.35     pg.24     pg.16     pg.10     pg.6     pg.3     pg.1

OLDER