如何在Cocoa中以编程方式创建捆绑包?
我试图创建一个像如何在Cocoa中以编程方式创建捆绑包?,cocoa,bundle,core-foundation,Cocoa,Bundle,Core Foundation,我试图创建一个像 CFBundleRef bundleRef = CFBundleCreate(kCFAllocatorDefault, (CFURLRef)@"/Users/MyUser/source/Mybundle.component"); CFBundleRef bundleRef = CFBundleCreate(kCFAllocatorDefault, (CFURLRef)@"/Users/MyUser/source/Mybundle.component"); 但我得到了西格伯特
CFBundleRef bundleRef = CFBundleCreate(kCFAllocatorDefault, (CFURLRef)@"/Users/MyUser/source/Mybundle.component");
CFBundleRef bundleRef = CFBundleCreate(kCFAllocatorDefault, (CFURLRef)@"/Users/MyUser/source/Mybundle.component");
但我得到了西格伯特
及
但是没有。我怎样才能做好呢?我应该先创建Mybundle.component目录吗
我试图创建一个像
CFBundleRef bundleRef = CFBundleCreate(kCFAllocatorDefault, (CFURLRef)@"/Users/MyUser/source/Mybundle.component");
CFBundleRef bundleRef = CFBundleCreate(kCFAllocatorDefault, (CFURLRef)@"/Users/MyUser/source/Mybundle.component");
但我得到了西格伯特
这是因为字符串不是CFURL对象CFBundleCreate
需要一个URL对象,挥手告诉它“这完全是一个CFURL对象”不足以使该路径成为一个URL对象。您需要实际创建一个CFURL或NSURL对象,并将其传递到那里
确保使用正确的功能/方法。要从路径创建URL,在Cocoa中,您需要fileURLWithPath:
,而不是URLWithString:
(后者需要表示URL的字符串,而不是路径)。CF具有与其中每个功能相对应的功能
及
但是没有…我应该先创建Mybundle.component目录吗
我不会指望一个空目录会被接受为一个bundle,但在为其创建bundle对象之前,您确实需要一个bundle已经存在于该路径(或CF中的URL)中
如果你想从头开始在磁盘上创建一个捆绑包,请考虑使用.< /P> 我试图创建一个像
CFBundleRef bundleRef = CFBundleCreate(kCFAllocatorDefault, (CFURLRef)@"/Users/MyUser/source/Mybundle.component");
CFBundleRef bundleRef = CFBundleCreate(kCFAllocatorDefault, (CFURLRef)@"/Users/MyUser/source/Mybundle.component");
但我得到了西格伯特
这是因为字符串不是CFURL对象CFBundleCreate
需要一个URL对象,挥手告诉它“这完全是一个CFURL对象”不足以使该路径成为一个URL对象。您需要实际创建一个CFURL或NSURL对象,并将其传递到那里
确保使用正确的功能/方法。要从路径创建URL,在Cocoa中,您需要fileURLWithPath:
,而不是URLWithString:
(后者需要表示URL的字符串,而不是路径)。CF具有与其中每个功能相对应的功能
及
但是没有…我应该先创建Mybundle.component目录吗
我不会指望一个空目录会被接受为一个bundle,但在为其创建bundle对象之前,您确实需要一个bundle已经存在于该路径(或CF中的URL)中
如果你打算从头开始在磁盘上创建一个捆绑包,考虑使用.< /p>为什么你甚至认为你可以将<代码> nScord提交到<代码> cFFLRIF?为什么你甚至认为你可以将<代码> NSncs<代码>转换成<代码> cFFLRIF?