Python程序怎么样在适当的是后打开一个外部程序,然后在适当的时候关闭它?

Python程序怎么样在适当的是后打开一个外部程序,然后在适当的时候关闭它?

我的需求是这样的,当程序运行到某个时候的时候,打开一个FTP Server程序FTP.exe(带着三个参数:用户名,密码,FTP Server的根目录),然后在完成FTP的功能后再关闭FTP.exe.
我查阅了一些资料,开启进程发现有os.system(command)和class subprocess.Popen
但关闭这个进程却有麻烦了,Windows下可以使用pywin32或者ctypes调用windows API来完成关闭它的任务。但我的程序需要跨操作系统的。
还有其他方法吗?
谢谢!
从python中调用外部操作系统的命令关闭ftp进程可行否?
你指的是用命令ntsd -c q -p PID 吗?这个只有Windows下有,每个操作系统的命令不一样的。我想要的效果是Python调用和操作系统无关的函数或者命令,就像开启进程的class subprocess.Popen和操作系统无关一样。


QUOTE:
原帖由 jsjszg 于 2008-4-6 13:20 发表
你指的是用命令ntsd -c q -p PID 吗?这个只有Windows下有,每个操作系统的命令不一样的。我想要的效果是Python调用和操作系统无关的函数或者命令,就像开启进程的class subprocess.Popen和操作系统无关一样。

可以针对不同的操作系统(你自己常用到的)做个封装。
还有就是你要完成的ftp功能是否可以用python的ftp或ssh之类的工具包完成,那样就不用启动外部程序了。

直接使用ftp模块就可以搞定
直接使用ftp模块就可以搞定吗?我试过,用ftplib只能建立FTP客户端,不能建立FTP服务器的。


QUOTE:
原帖由 jsjszg 于 2008-4-7 21:47 发表
直接使用ftp模块就可以搞定吗?我试过,用ftplib只能建立FTP客户端,不能建立FTP服务器的。

以下这几个可以参考一下:
http://code.google.com/p/pyftpdlib/
http://sourceforge.net/project/showfiles.php?group_id=1865
http://blog.chinaunix.net/u/28470/showart_372862.html
http://bobning.javaeye.com/blog/150381
好像跑题了。我的问题是怎么用Python开启一个进程和关闭进程。


QUOTE:
原帖由 jsjszg 于 2008-4-8 20:44 发表
好像跑题了。我的问题是怎么用Python开启一个进程和关闭进程。

开启和关闭的不是ftp进程么?