我正在尝试在 OS X 应用程序中安装网络卷。
我使用已弃用的 FSMountServerVolume
函数让它工作。该文档说“要安装网络卷,请改用 NetFSMountURLAsync”。但是当我尝试使用此功能时,我收到以下错误消息:
dyld: lazy symbol binding failed: Symbol not found: _NetFSMountURLSync
Referenced from: /Users/username/Library/Developer/Xcode/DerivedData/AppName-ammmlfwhvlfxkdburfmzioformdn/Build/Products/Debug/AppName.app/Contents/MacOS/AppName
Expected in: /System/Library/Frameworks/NetFS.framework/Versions/A/NetFS
dyld: Symbol not found: _NetFSMountURLSync
Referenced from: /Users/username/Library/Developer/Xcode/DerivedData/AppName-ammmlfwhvlfxkdburfmzioformdn/Build/Products/Debug/AppName.app/Contents/MacOS/AppName
Expected in: /System/Library/Frameworks/NetFS.framework/Versions/A/NetFS
我是不是忘记了什么?我导入了 NetFS 框架。
最佳答案
好的,它看起来像 10.8 中引入的 NetFSMountURLSync()
等。
来自NetFS Changes :
Added AsyncRequestID
Added NetFSMountURLAsync()
Added NetFSMountURLBlock
Added NetFSMountURLCancel()
Added NetFSMountURLSync()
Added #def kNAUIOptionAllowUI
Added #def kNAUIOptionForceUI
Added #def kNAUIOptionKey
Added #def kNAUIOptionNoUI
Added #def kNetFSMountAtMountDirKey
因此,您将不得不在 10.7 及更低版本中使用“旧方式”,在 10.8 及更高版本中使用“新方式”。这意味着将 NetFS.framework
设置为可选而不是必需,并且需要执行各种运行时检查以查看需要使用哪个 API。
关于objective-c - 从 OS X 应用程序挂载网络卷,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15274920/