从 Finder 运行 OSX 应用程序与从 Xcode 运行 OSX 应用程序之间的区别???
系统是 iMac 27” all-in-1,运行 Mavericks OSX 10.9.5 和最新的 Xcode 6.0.1
该应用程序读取一个二进制文件并写入两个文本文件,可以重写二进制文件,并绘制一个
窗口客户区。
应用程序完全在 Xcode 中运行。应用程序、二进制文件和两个文本文件位于 ~/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 运行(双击)时,应用程序无法写入文件。无论应用程序和文件位于何处......
/用户/我的名字/应用程序/应用程序名称
/用户/我的名字/库/应用程序支持/应用程序名称
Other
我应该说该应用程序是在 Xcode 中构建的 Archive/Release 并放置在目标目录中
查找器情况。这是正确的方法吗?这是我的第一个 OSX 应用程序,但我一直在编程
几十年。
Finder 情况的权限是
应用程序:myname 读写、员工只读、所有人只读
二进制文件:myname 读和写,staff 读和写,每个人读和写
文本文件:myname 读和写、staff 读和写、每个人读和写
我还检查了 Unix 终端目录树中的所有权限。
/用户/我的名字/...
Xcode 与 Finder,有什么区别?关于…
用户名(昵称)
组名称(员工、根、管理员)
启动时的工作目录
应用程序和文件的权限(读、写、执行)
应用程序和文件的位置
/tmp 位置用于文件写入工作吗?
放置应用程序和文件的最佳位置在哪里?
应用程序工作目录被应用程序更改为应用程序和文件所在的位置。
Xcode -> 产品 -> 方案 -> 编辑方案 -> 选项 -> 工作目录设置为相同位置。
这对 Finder 运行情况没有帮助。
该应用程序的 MS Windows 版本运行良好。
我已经为 iMac OSX 环境移植并重新编写了它,并且它在 Xcode 中运行得很好。
Finder 案例有什么问题?为什么无法以输出模式打开文件?
我正在考虑以 Objective-C 风格重写文件 i/o,但这会很痛苦,不应该
必要的。 CString 与 NSString 对我来说是一个很大的痛苦。我不得不使用 .mm 和
Objective- C++ 源类型,到目前为止。
欢迎提出想法并表示感谢。