[問題] 如何以程式操控外部程式

看板C_and_CPP (C/C++)作者 (Working Hard)時間14年前 (2011/09/19 10:26), 編輯推噓1(1018)
留言19則, 4人參與, 最新討論串1/2 (看更多)
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) BCB 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) 問題(Question): 外部的程式以word為例,比如我在程式中指定好一些參數 執行時就能開啟*.txt然後另存為*.doc 希望達到大概類似這樣的功能 有找了幾個方式來用,如WinExec、popen、ShellExecute、CreateProcess 目前是以CreateProcess為主,但不知該如何傳遞命令參數給word來讓他執行所要求的動作… 應該是在lpCommandLine這個參數做設定吧…但不知該怎麼設定 看了msdn,這個參數好像跟lpApplicationName一樣 都是指定路徑而已 還是說要對外部程式操控還有其他方法? 謝謝大家 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 211.74.192.147

09/19 12:43, , 1F
你得要知道你的程式要怎麼利用命令列參數做事
09/19 12:43, 1F

09/19 12:43, , 2F
像 Word 這種不用命令列參數的就不能用這些方法了
09/19 12:43, 2F

09/19 12:43, , 3F
(唔講錯了 不是完全不用參數 是沒有幫你另存的參數)
09/19 12:43, 3F

09/19 13:06, , 4F
其實最初目的是想用在AutoCAD上,就開檔圖檔後,另存為dxf
09/19 13:06, 4F

09/19 13:07, , 5F
檔,AutoCAD中是可以用指令來做,只知如何從c去傳遞指令
09/19 13:07, 5F

09/19 13:10, , 6F
應該是沒辦法直接使用 Office 執行檔辦到這件事, 你需要
09/19 13:10, 6F

09/19 13:10, , 7F
OpenXML SDK...或者 OpenOffice SDK 應該也是不錯的選擇
09/19 13:10, 7F

09/19 13:12, , 8F
其實也不一定要office,現在只是好奇,有辦法從c的程式中
09/19 13:12, 8F

09/19 13:12, , 9F
BCB我不曉得,之前是用Office Development in Visual Studio
09/19 13:12, 9F

09/19 13:13, , 10F
使用.net呼叫office操作檔案的api
09/19 13:13, 10F

09/19 13:13, , 11F
傳遞參數給執行檔(不是自己寫的),只是像上面版友所言,非
09/19 13:13, 11F

09/19 13:13, , 12F
公開的似乎要實作有難度…
09/19 13:13, 12F

09/19 13:14, , 13F
忘了說,傳遞的參數是能讓該執行檔有動作的,如save
09/19 13:14, 13F

09/19 13:17, , 14F
如果是要控制Word/Excel,那關鍵字: DDE
09/19 13:17, 14F

09/19 13:17, , 15F
但是事實上你的目的並不是要開word/excel,只是要操作文件
09/19 13:17, 15F

09/19 13:17, , 16F
所以呼叫api感覺才是比較合理的作法
09/19 13:17, 16F

09/19 13:18, , 17F
畢竟如果你要寫server cgi或command line是不能開GUI的
09/19 13:18, 17F

09/19 13:28, , 18F
謝謝,看到一些關鍵字後至少有方向查了。感謝,不然都一直
09/19 13:28, 18F

09/19 13:29, , 19F
卡在只能呼叫執 行軟體,然後…就沒了
09/19 13:29, 19F
文章代碼(AID): #1ETgWxvM (C_and_CPP)
文章代碼(AID): #1ETgWxvM (C_and_CPP)