我的cocoa应用程序的可执行文件是xyz.app文件。但是当我在Windows上复制它时,它会将其显示为包含所有资源文件和内容的目录。有没有办法在mac上创建单个文件可执行文件(如Windows上的.exe文件),以禁止用户查看资源文件和其他文件?
由于
答案 0 :(得分:1)
你在谈论Bundle,这是一个给予扩展名的文件夹,操作系统将其视为单个文件,而实际上它是一个包含资源的文件夹。 NIB文件存储在此捆绑包以及可执行文件和info.plist文件中。这就是应用程序在Cocoa中的工作方式。
唯一的方法是用不同的语言编写你的应用程序,但我不确定哪个(如果有的话)会给你一个文件可执行文件。
您在应用目录中存储了哪些不希望人们有权访问的内容?
答案 1 :(得分:1)
确实,有一些非常复杂的方法可以做到这一点。例如,您可以gzip所有资源文件并在运行时解压缩它们。但是没有充分的理由这么做 - 它所做的就是为你做更多的工作,引入额外的复杂性并使你的应用变慢。 Adobe没有这样做,微软不这样做,微型ISV不这样做 - 这是不可取的。