Tag: cocoa

你如何从cocoa应用程序运行rails命令?

我已经坚持了一段时间。 我正在尝试从我的cocoa应用程序运行rails shell命令来创建新闻rails应用程序。 当我跑 ~/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/bin/rails new projectname 我能够创建一个新项目。 但是,如果我运行这样的东西 NSString *path = @”~/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/bin/rails”; NSString *script = [NSString stringWithFormat:@”%@ new ~/Desktop/testapp”, path]; system([script UTF8String]); 或这个 – (IBAction)buildProject:(NSButton *)sender { NSString *path = @”~/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/bin/rails”; NSArray *args = [NSArray arrayWithObjects:@”new”, @”~/Desktop/testapp”, nil]; NSTask *task = [NSTask new]; [task setLaunchPath:path]; [task setArguments:args]; [task launch]; } 我收到以下错误 /Users/dylanross/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/bin/rails:7:in `require’: no […]

使用Cocoa框架时,MacRuby指针,引用,解除引用

在MacRuby指向typedef结构的指针上 ,我学会了如何取消引用用它创建的指针 x=Pointer.new_with_type … ==> use x.value, or x[0] 干得好吃! 现在我想学习我认为的“对立面”。 我正在尝试使用此API。 OSStatus SecKeychainCopySettings ( SecKeychainRef keychain, SecKeychainSettings *outSettings ); 第二个参数必须是指针。 但我从来没有设法打开钥匙链的真实outSettings,我只获得默认设置。 framework ‘Security’ keychainObject = Pointer.new_with_type(‘^{OpaqueSecKeychainRef}’) SecKeychainOpen(“/Users/charbon/Library/Keychains/Josja.keychain”,keychainObject) #attempt #1 settings=Pointer.new_with_type(‘{SecKeychainSettings=IBBI}’) SecKeychainCopySettings(keychainObject.value, settings) p settings.value # #attempt #2 settings2=SecKeychainSettings.new result = SecKeychainCopySettings(keychainObject.value, settings2) p settings2 # 应阅读钥匙串的设置 # 我错过了什么?

从Ruby或PHP或Cocoa访问Mac应用程序

我想从Ruby中访问几个不同的Mac OS X应用程序,但我会选择PHP。 应用程序是Elgato的turbo.264和Apple的iTunes。 两者都定义了Applescript Libraries,允许我从Applescript做我想做的事情,但我不想在Applescript中做到这一点。 如果我不能在Ruby或PHP中这样做,也许我可以在目标C / Cocoa中创建它并创建一些我可以从Ruby调用的包装器。 这有可能吗? 似乎这些方法在Applescript中可用,它们应该以其他语言提供,我几乎找不到任何东西。

我的Rails和Cocoa应用程序之间的SHA1哈希值不匹配

我有一个Cocoa应用程序将一些数据连同该数据的SHA1哈希发送到Rails应用程序,该应用程序validation数据和哈希匹配,但它们没有。 为了确保我已经在Rails和Cocoa端记录了散列到控制台的数据的hex版本,并且它们完全匹配。 这是cocoa部分: #import //… – (NSData *)dataOfSHA1Hash { unsigned char hashBytes[CC_SHA1_DIGEST_LENGTH]; CC_SHA1([self bytes], CC_SHA1_DIGEST_LENGTH, hashBytes); return [NSData dataWithBytes:hashBytes length:CC_SHA1_DIGEST_LENGTH]; } //… NSData *signatureData = [signedData dataOfSHA1Hash]; NSString *signature = [signatureData hexadecimalString]; ..和Rails: Digest::SHA1.hexdigest(signed_data) 请注意,-hexadecimalString是NSData的自定义扩展(似乎没有内置),我已经测试过了。 这种方法似乎不是问题。 那么,为什么我的SHA1哈希值不匹配相同的数据呢? 有任何想法吗? 编辑:示例 对于字符串“Hello World!” cocoa:f98ee9c814c2f3c66ccdca641298d12cd26741ec Rails:2ef7bde608ce5404e97d5f042f95f89f1c232871 cocoa: NSMutableData *signedData = [[NSMutableData alloc] init]; [signedData appendData:[@”Hello World!” dataUsingEncoding:NSUTF8StringEncoding]]; NSData […]

学习MacRuby的好资源

我不懂Ruby,我有兴趣学习MacRuby。 你会推荐什么样的最佳资源(书籍,博客,网站)? 发现: http : //www.macruby.org/ 更多信息来自rubyconf.org Macruby talk

PyObjc vs RubyCocoa for Mac开发:哪个更成熟?

我一直想要玩Ruby或Python,同时我一直想做一些Cocoa编程。 所以我认为实现这两个目标的最佳方法是使用Ruby或Python到Objective-C桥(PyObjc或RubyCocoa)开发一些东西。 我知道理想情况下,为了获得最好的学习经历,我会独立学习每个技术,但我没有时间。 🙂 所以我的问题是哪个是更成熟的平台,PyObc或RubyCocoa,我正在寻找的主要内容: API的文档 教程 工具 支持性社区 cocoaAPI的完整性通过桥梁可用 关于第5点,我不希望整个Cocoa API可以通过任何一个桥接器获得,但我需要有足够的Cocoa API来开发一个正常运行的应用程序。