- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在尝试使用 MonoMac 创建一个简单的应用程序,并且需要执行苹果脚本来访问来自不同媒体播放器的播放列表信息(参见我的 previous question)。
我决定尝试一下 MonoMac,因为我非常熟悉 C# 和 .net 开发,并且有一个很好的 Websocket 实现。
不幸的是,似乎没有适用于 NSAppleScript 的包装器。我试过 Frederic Forjans implementation并尝试使用 monobjc .
当我使用他的代码时,Frederics 包装器类甚至无法编译,我得到以下异常:
Unhandled Exception: System.IO.FileNotFoundException: Could not load file or assembly 'MonoMac, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies.File name: 'MonoMac, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null'
当创建一个新的 NSString
实例时。但是,位于同一程序集中的 new NSDictionary();
工作正常。
使用 monobjc 时出现以下错误:
Unhandled Exception: System.TypeInitializationException: An exception was thrown by the type initializer for Monobjc.ObjectiveCRuntime ---> System.EntryPointNotFoundException: monobjc_install_bridge at (wrapper managed-to-native) Monobjc.NativeMethods:InstallBridge () at Monobjc.ObjectiveCRuntime..cctor () [0x00000] in :0 --- End of inner exception stack trace --- at CocoaApplication1.Program.Main () [0x00000] in :0
谁能建议一种在单声道环境中执行苹果脚本的简单有效的方法?
最佳答案
如果不使用 Monobjc 运行时二进制文件运行它们,则不能直接使用 Monobjc 程序集。无论您想构建基于 Cocoa 的应用程序还是控制台应用程序,there are tutorials在 Monobjc 的网站上可以帮助您入门。
实现应用程序间通信的最简单方法是使用 ScriptingBridge 框架。许多应用程序提供脚本定义,然后可以以面向对象的方式使用这些定义:take a look at this guide了解更多详情。
请注意,脚本桥仅适用于启用脚本的应用程序(如 iTunes、iCal、iMovie、Finder 等)。
Monobjc支持ScriptingBridge框架;甚至还有两个示例应用程序(SBSetFinderComment 和 ScriptingBridgeiCal)展示了如何集成它。
关于objective-c - MonoMac - 我怎样才能执行苹果脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5875830/
如果我使用“仅链接 SDK”构建我的应用程序以发布版本(用于在没有 Mono 的机器上进行 beta 测试),它不再启动——它似乎立即崩溃。 这是我运行我的应用程序命令行时的崩溃: [ERROR] F
我正在 MonoMac 中编写一个应用程序,如果我使用此调用打开辅助对话框,它会遇到问题 var prefForm = new PrefFormController(); prefForm.Windo
MonoMac 的页面似乎被放弃了。它似乎是几年前的最后一次更新,因为它说“Mountain Lion”是"new"操作系统。 New Lion and Mountain Lion APIs for
我刚开始在 Xamarin Studio 中使用 MonoMac,我遇到了最奇怪的问题: 我有一个带有 NSButton 和 NSTextField 的窗口。至此,我已经删除了按钮上的事件处理程序,所
我正在使用 MonoMac 开发一个应用程序,到目前为止,我很高兴它在 Windows 世界中的易用性。然而,我对什么应该是一个容易实现的功能感到困惑:在选项卡标题中放置一个关闭按钮。 这已经在这里问
是否在 MonoMac 中实现了 Game Center API? 如果没有,是否有为它们创建 C# 绑定(bind)的推荐路径? 最佳答案 开源 MonoMac 不包含 GameKit 绑定(bin
我正在尝试使用 Environment.Exit(0) 关闭 MonoMac 应用程序。但是,由于某种原因,此调用不会返回。它也不会抛出异常。当我在 MonoDevelop 的即时窗口中执行函数时,它
我是一名 .NET 开发人员,正在尝试使用 Windows 应用程序的 OSX 端口。我正在使用 MonoDevelop 和 MonoMac(带有 XCode Interface Builder)来创
我是一名 C# 开发人员,我想为 MacOS 移植我的应用程序。我安装了所有需要的 monomac,但我找不到它的教程和示例。有人可以分享链接吗? 最佳答案 您可以在 MonoMac github 存
这是我收到的错误: MonoMac.AppKit.AppKitThreadAccessException:AppKit 一致性错误:您正在调用只能从 UI 线程调用的方法。 我想将我的程序布局如下 i
我可以使用 - (BOOL)applicationShouldTerminateAfterLastWindowClosed: 使用应用程序委托(delegate)中的方法在窗口关闭时退出 cocoa
我想在 MonoMac 的 View 上画一些圆圈,但我完全不知道从哪里开始。在 Windows 上的 .NET 下,我会做类似的事情 Canvas canv = new Canvas(); Ell
我正在使用 MonoMac 开发一个应用程序,它使用 Sqlite 数据库作为数据存储。我正在使用 Mono.Data.Sqlite 命名空间中的类来访问数据库。在 OS X 10.7.4 上,Sql
我是 mono 和 monomac 的新手,我遇到了一些我希望应该很容易修复的问题。 在我的应用程序中,我想在运行时更改一些图像,所以我在项目的根目录中创建了一个“图像”文件夹,其中包含我的照片。但是
好的,所以我正在尝试在 mono mac 应用程序中使用 CoreLocation。在尝试了几次但没有成功(.UpdatedLocation 事件从未引发)之后,我从 MonoMac reposito
我有一个 Silverlight 应用程序,我使用 MonoMac 为 Mac 编写了一个启动器(基本上是一个嵌入式 Web 浏览器控件,可以加载包含 SL xap 的页面)。但是,我一直收到无法调试
我们在 MonoMac 上使用 AVAudioPlayer 时遇到问题。 我们在控制台上收到此警告: Class AVAudioPlayer is implemented in both ?? and
我正在尝试使用 MonoDevelop 3.0.3.2 创建 MonoMac 应用程序。我创建了一个新的 MonoMac 解决方案并尝试运行创建该解决方案后创建的模板,但这是我的构建输出: Build
我有一个 MonoMac 应用程序,想看看是哪一行导致了异常。我所有的堆栈跟踪都是这样的: [ERROR] FATAL UNHANDLED EXCEPTION: System.Reflection.T
我正在尝试使用 MonoMac 创建一个简单的应用程序,并且需要执行苹果脚本来访问来自不同媒体播放器的播放列表信息(参见我的 previous question)。 我决定尝试一下 MonoMac,因
我是一名优秀的程序员,十分优秀!