我可以使用ShellExec
打开外部程序 ret := ShellExecute(handle, 'open', PChar(filename), nil, nil, SW_NORMAL);
然后我想发送命令,如:
msg := 'open ftp://MyUser:MyPass@www.website.com';
这可能吗?
答案 0 :(得分:3)
我猜这可能,但这不是最好的方法。最好的方法是使用CreateProcess
。它是一个更复杂的API,但它会使您尝试的更简单。
程序如下:
CreateProcess
创建孩子。将第一个管道的读取端连接到子级标准中。将第二个管道的写入端附加到子级的标准输出。 如果您不熟悉此类编码,这可能会令人生畏。你可能会找到一个让它变得简单的库。
这篇MSDN文章演示了如何:
Creating a Child Process with Redirected Input and Output
由于您似乎想要进行FTP,因此最好避免使用外部进程。使用像Indy这样的库。