我正在尝试使用系统命令清除剪贴板。所以,我有下面的代码在我的应用程序(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 –