从Finder运行OSX App与Xcode之间的区别?

时间:2014-10-02 12:46:59

标签: xcode macos finder

从Finder运行OSX App与Xcode之间的区别???

系统是iMac 27“一体化运行Mavericks OSX 10.9.5和最新的Xcode 6.0.1

应用程序读取二进制文件并写入两个文本文件,可以重写二进制文件,并绘制一个 窗口客户区。

App完全在Xcode中运行。 App,二进制文件和两个文本文件位于〜/ Debug或〜/ Release目录中。 写文件没问题。文件i / o代码执行此操作...

std::fstream out(  binary_file, std::ios::in|std::ios::binary);
if ( out )
out.read(buffer, MaxBuffer);
out.close();

ofstream info(“info_file.txt”);
if ( info.is_open() )
info << text;
info.close();
system("chmod 777 info_file.txt"); //tried this, doesn’t help

ofstream clout(“clout_file.txt”);
if ( clout.is_open() )
clout << text;
clout.close();
system("chmod 777 clout_file.txt"); //tried this, doesn’t help

从Finder运行(双击)时,应用程序无法写入文件。无论App和文件位于何处......

/用户/ MYNAME /应用/应用程序的名字

/ Users / myname / Library / Application Support / Appname

其他

我应该说应用程序是在Xcode中内置的存档/发行版,并放在目标目录中 Finder情况。这是正确的方法吗?这是我的第一个OSX应用程序,但我一直在编程 几十年。

Finder情况的权限是

App:myname Read&amp;写,工作人员只读,每个人只读 二进制文件:myname Read&amp;写,工作人员阅读&amp;写,每个人阅读&amp;写 文本文件:myname Read&amp;写,工作人员阅读&amp;写,每个人阅读&amp;写

我也检查了Unix终端目录树中的所有权限。 /用户/ MYNAME / ...

Xcode与Finder,有什么区别?关于...

用户名(byname)

组名(职员,root,admin)

启动时的工作目录

应用程序和文件的权限(读,写,执行)

应用和文件的位置

将文件写入工作的/ tmp位置?

哪里是放置App和文件的最佳位置?

应用程序工作目录由App更改为App和文件所在的位置。 Xcode - &gt;产品 - &gt;方案 - &gt;编辑方案 - &gt;选项 - &gt;工作目录设置为相同的位置。 这对Finder的运行情况没有帮助。

此应用程序的MS Windows版本正常工作。 我为iMac OSX环境移植了它,重新编写了它,它在Xcode中运行得很好。 Finder案有什么问题?为什么不能在输出模式下打开文件?

我正在考虑以Objective-c风格重写文件i / o,但这会很痛苦,不应该是 必要。 CString与NSString对我来说是一个很大的痛苦。我不得不使用.mm和 objective-c ++源类型,以实现这一目标。

欢迎并感谢。

1 个答案:

答案 0 :(得分:1)

完整路径名解决了从Finder运行的所有问题。已成功尝试多个目录位置。非常感谢Paul R.