让我的应用程序在启动时启动网络卷

时间:2013-09-13 19:06:41

标签: macos cocoa

刚开始使用ObjC和Xcode。

我希望我的应用程序在启动时连接/安装AFP网络卷(凭据已保存到计算机的钥匙串中)。我意识到我需要在此处放置此代码:

  • (void)applicationDidFinishLaunching:(NSNotification *)aNotification {

XXX

}

除了我不太确定需要去哪里?!

我已经了解到FSMountVolume现已弃用,并且它希望看到NSURL,除了我不确定如何实现它 - 我是如此新,以至于我很难理解如何阅读和实现Xcode文档。 ..

有没有人知道快速而肮脏的方法呢?

1 个答案:

答案 0 :(得分:0)

这是一个应安装驱动器的小程序。它在我的计算机上编译和工作,但我的afp路径中没有任何空格。如果有效,请告诉我:

#import <Foundation/Foundation.h>
#include <NetFS/NetFS.h>

int main(int argc, const char * argv[]){
    @autoreleasepool {

        NSURL * share = [NSURL URLWithString: @"afp://user@server_ip/share"];
        NSURL * path = [NSURL URLWithString: @"/path/to/mount/point/"];
        CFURLRef share2 = (__bridge CFURLRef) share;
        CFURLRef path2 = (__bridge CFURLRef) path;
        CFArrayRef mountpoints = NULL;

        NetFSMountURLSync(share2, path2, NULL, NULL, NULL, NULL, &mountpoints);
    }
    return 0;
}