[英]How to write a GUI wrapper around a command line program in *C*?
系統(); 能夠在PATH中調用程序。 如何將從GUI上的文本字段讀取的stdin讀入帶有自己提示的命令行程序,例如ftp,sftp ...?
System()等待程序退出,但是ftp並非沒有用戶交互。 創建批處理文件也是不可能的,因為在運行時,啟動時只能讀取一次。
如果可能,請使用C for UNIX(如果沒有其他語言)編寫解決方案。
可能,但並非那么容易。 您可以看一下Expect 。 它是一種編程語言,可自動與非GUI工具進行交互。 Expect庫已經嵌入到Python之類的其他事物中,因此我認為您可以將其嵌入到C語言代碼中。
我知道的最簡單的方法是將forkpty()
與exec()
。 forkpty()
返回一個文件描述符,該文件描述符被重定向到程序stdin和stdout。 寫入文件描述符的是程序的輸入。 程序寫入的所有內容都可以從文件描述符中讀取。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.