|
Hello all, by refering to article http://www.codeproject.com/internet/rpcintro1.asp, i was wondering if i allocate an memory at server side, the return the pointer.
// Server function.
const char* Server::Output()
{
m_pVar = new char[1024];
return m_pVar
}
m_pVar is Server class member. Server will delete m_pVar in its destructor. However, may I know once the Client receive the pointer,
// Client code
const char* m_pClientPointer = Output();
does client need to perform deletion on m_pClientPointer?
Thank you!
|
|
|
|
|
Hi All,
I am working on an application that allows the user to upload files on a FTP Server. Now when I use the code below to iterate through the files on the server I just get a '.' and nothing else.
BOOL bResult=true;
WIN32_FIND_DATA w32fdFtpFile;
HINTERNET hInetFindFile=::FtpFindFirstFile(hInetConn,"*.*",&w32fdFtpFile,0,0);
if(hInetFindFile !=(HINTERNET)NULL)
{
while(bResult)
{
bResult=::InternetFindNextFile(hInetFindFile ,&w32fdFtpFile);
}
}
InternetCloseHandle (hInetFindFile);
Can someone point out what I am doing wrong here.
Thanks for any help.
Somethings seem HARD to do, until we know how to do them.
_AnShUmAn_
|
|
|
|
|
change your filter to just * instead of *.* so you won't require a period somewhere in the name.
earl
|
|
|
|
|
Are there files in the folder opened by FtpFindFirstFile() ? Does the while loop run indefinitely, or just once?
"Money talks. When my money starts to talk, I get a bill to shut it up." - Frank
"Judge not by the eye but by the heart." - Native American Proverb
|
|
|
|
|
Thanks for replying David. Yes there are files on the server.It shows me only one '.' and nothing else.Any suggestions on how I get all the files.
Somethings seem HARD to do, until we know how to do them.
_AnShUmAn_
|
|
|
|
|
_AnShUmAn_ wrote: Yes there are files on the server.
I did not ask if there were files on the server. I asked if there were files in a specific folder. Since you specified a relative path, rather than an absolute path, to FtpFindFirstFile() , you may very well be in a folder (i.e., CWD) that has no files.
"Money talks. When my money starts to talk, I get a bill to shut it up." - Frank
"Judge not by the eye but by the heart." - Native American Proverb
|
|
|
|
|
Hi David,
Can you put some light on how can I set the path of the folder on the FTP Server whose files I want to display in my application
Somethings seem HARD to do, until we know how to do them.
_AnShUmAn_
|
|
|
|
|
Check out FtpSetCurrentDirectory() and FtpGetCurrentDirectory() .
"Money talks. When my money starts to talk, I get a bill to shut it up." - Frank
"Judge not by the eye but by the heart." - Native American Proverb
|
|
|
|
|
Thanks again David. I managed to get that working earlier.
Can you provide me a link on how could I set up a callback function for InternetStatusCallback. At present I am doing this way
hInetOpen = InternetOpen("MyFTPClient",INTERNET_OPEN_TYPE_DIRECT,NULL,NULL,INTERNET_FLAG_ASYNC);
INTERNET_STATUS_CALLBACK inetStatusCallback =InternetSetStatusCallback(hInetOpen ,(INTERNET_STATUS_CALLBACK)InternetStatusCallback );
if(inetStatusCallback == INTERNET_INVALID_STATUS_CALLBACK)
{
CString szErrMsg;
szErrMsg.Format("%s: %d", "InternetData : InternetSetStatusCallback: ",GetLastError());
return false;
}
I am getting an error "type cast' : cannot convert from 'overloaded-function' to 'INTERNET_STATUS_CALLBACK'
"
Thanks.
Somethings seem HARD to do, until we know how to do them.
_AnShUmAn_
-- modified at 8:46 Friday 21st July, 2006
|
|
|
|
|
_AnShUmAn_ wrote: I am getting an error "type cast' : cannot convert from 'overloaded-function' to 'INTERNET_STATUS_CALLBACK'
"
You failed to indicate the offending statement. How is InternetStatusCallback() defined?
_AnShUmAn_ wrote: szErrMsg.Format("%s: %d", "InternetData : InternetSetStatusCallback: ",GetLastError());
GetLastError() returns a DWORD , not an int .
"Money talks. When my money starts to talk, I get a bill to shut it up." - Frank
"Judge not by the eye but by the heart." - Native American Proverb
|
|
|
|
|
|
So which statement is the compiler complaining about?
"Money talks. When my money starts to talk, I get a bill to shut it up." - Frank
"Judge not by the eye but by the heart." - Native American Proverb
|
|
|
|
|
Everything compiles fine. Just the callback function isn't called.
Somethings seem HARD to do, until we know how to do them.
_AnShUmAn_
|
|
|
|
|
_AnShUmAn_ wrote: Just the callback function isn't called.
What code do you have in place that *should* be calling it?
"Money talks. When my money starts to talk, I get a bill to shut it up." - Frank
"Judge not by the eye but by the heart." - Native American Proverb
|
|
|
|
|
|
stancrm wrote: String*
Uh ? What is a String* ? Either it is a CString or a std::string but I never heard about a String. BTW, the pointer seems strange in that case.
In brief, you have to give more info if you want an answer.
Cédric Moonen
Software developer
Charting control
|
|
|
|
|
|
Cedric Moonen wrote: What is a String* ?
I've no idea, but Windows has a String structure that is used by the Version API. Java has a String class, but this would be the wrong forum for that (like that has ever stopped anyone).
"Money talks. When my money starts to talk, I get a bill to shut it up." - Frank
"Judge not by the eye but by the heart." - Native American Proverb
|
|
|
|
|
stancrm wrote: I write my code using VC++ .NET
That's fine. It matters not what platform you are using. toxcct's point about casting to a const void* is what's important.
"Money talks. When my money starts to talk, I get a bill to shut it up." - Frank
"Judge not by the eye but by the heart." - Native American Proverb
|
|
|
|
|
even the problem told by cedric is true, here is what you have to know about LPCVOID :
L-P-C-VOID stands for long-pointer-const-void, so, const void* ; and you certainly know that any pointer can be casted into void*
TOXCCT >>> GEII power
[VisualCalc 3.0 updated ][Flags Beginner's Guide new! ]
|
|
|
|
|
|
stancrm wrote: Deleted]
[Click for User Profile] stancrm 20hrs 39mins ago
Message Deleting is strickly ban here
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
cheers,
Alok Gupta
VC Forum Q&A :- I/ IV
Support CRY- Child Relief and You
|
|
|
|
|
Hello everyone,
Suppose we have the source codes, how to get all invoked system API (like printf, open, etc.) other than program self-defined API? Are there any existing tools?
Either on Windows or on Linux platform is ok.
thanks in advance,
George
|
|
|
|
|
i'm sorry to say that printf(), open() and such functions are not system APIs at all !!! they are C runtime...
system APIs are those defined by the OS, like ShellExecute() for instance.
TOXCCT >>> GEII power
[VisualCalc 3.0 updated ][Flags Beginner's Guide new! ]
|
|
|
|
|
Sorry that I may not make myself understood. I mean the APIs which are invoked by my program, but not implemented by my program.
regards,
George
|
|
|
|