在Mac上使用c++打开其他程序[XCode]

liwlm1x9  于 2023-03-04  发布在  Mac
关注(0)|答案(4)|浏览(198)

我想在XCode上用C++打开一个附加程序。它是Firefox。但是如果我

Shell Execute("file://localhost/Applications/Firefox.app");

有一个错误'ShellExecute' was not declared in this scope在其他论坛有一个线索,包括windows. h和shellapi. h

#include <shellapi.h>
#include <windows.h>

但这会造成其他错误

shellapi.h: No such file or directory
windows.h: No such file or directory

我该怎么做?我想在Mac上用XCode用c++打开frefox?

o3imoua4

o3imoua41#

尝试在终端中运行此命令以打开Firefox:

open -a Firefox http://www.ibm.com

如果这符合您的要求,则需要将其 Package 在system()中,如下所示:

#include <cstdlib>
#include <fstream>
#include <iostream>

int main()
{
    std::system("open -a Firefox");
}
cmssoen2

cmssoen22#

ShellExecute()只能通过Windows API使用。您没有Windows系统。
您可以简单地使用(更易移植的)system()函数,或者POSIX兼容系统上可用的exec()函数之一。

ruarlubt

ruarlubt3#

我用chrome做了同样的尝试,我不得不用引号来设置它:

int main() {
    system("open -a 'Google Chrome'");

    return 0;
}

加上撇号就成功了!

jjjwad0x

jjjwad0x4#

它不能工作的一个原因是因为你在C++环境中使用C代码,它可以工作,但是非常不同。

相关问题