我正在嘗試使用系統命令清除剪貼板。所以,我有下面的代碼在我的應用程序(C語言編寫的在Mac 10.6) -在Mac上清除剪貼板
SYSTEM("/bin/echo -n '' | /usr/bin/pbcopy");
但上述線不清除剪貼板。有趣的是,如果我在終端中運行以下命令,它將清除剪貼板。
/bin/echo -n '' | /usr/bin/pbcopy
任何想法爲什麼系統行爲奇怪。
我正在嘗試使用系統命令清除剪貼板。所以,我有下面的代碼在我的應用程序(C語言編寫的在Mac 10.6) -在Mac上清除剪貼板
SYSTEM("/bin/echo -n '' | /usr/bin/pbcopy");
但上述線不清除剪貼板。有趣的是,如果我在終端中運行以下命令,它將清除剪貼板。
/bin/echo -n '' | /usr/bin/pbcopy
任何想法爲什麼系統行爲奇怪。
你在做太多的工作。有沒有必要叉一個外殼和兩個更多的進程來做到這一點:
[[NSPasteboard generalPasteboard] clearContents];
儘管他的程序是用C編寫的。 – Thilo
@Thilo - 正確。 – Prashant
然後鏈接到Carbon庫並調用PasteboardClear()。 – NSResponder
你確定系統調用工作嗎?你在檢查錯誤嗎?你可以試試'/ bin/echo test> /tmp/test.txt'嗎? – Thilo
@Thilo - 不,我不檢查錯誤。此外系統調用像系統(「/ usr/sbin/networksetup -setairportpower en1 on」) - 這是上面這行正在工作。 – Prashant
爲什麼只是C,爲什麼不寫Obj-C並在其中使用C。這會給你所有的Cocoa Mac的善良?也許我錯過了一些東西,但是我相信你可以在Obj-C裏面直寫C –