它並不直接解決您的問題,但是對此question的答案是否可以幫助您?
具體來說,它使用項目上的自定義執行命令選項來解決問題。您可以定義自定義命令在調試器中執行應用程序:
打開「工程選項」,到了「運行>自定義命令」部分,對「執行」
添加自定義命令
它還提到了Debugger.Break行爲:
如果您的應用單聲道軟調試器內部運行使用Mono 2.11或更高版本[...],它將設置軟斷點軟調試器和作爲工作預計
編輯:
你可以叫上一個正在運行的Mac應用程序的URL ...你可以建立一個處理程序陷阱的情況下,內部設置一個斷點,並檢查您的網址被調用已經正常運行的應用程序?它可能會給您提供行爲的線索或進一步調試的方法。就像這樣:
public override void FinishedLaunching(NSObject notification)
{
NSAppleEventManager appleEventManager = NSAppleEventManager.SharedAppleEventManager;
appleEventManager.SetEventHandler(this, new Selector("handleGetURLEvent:withReplyEvent:"), AEEventClass.Internet, AEEventID.GetUrl);
}
[Export("handleGetURLEvent:withReplyEvent:")]
private void HandleGetURLEvent(NSAppleEventDescriptor descriptor, NSAppleEventDescriptor replyEvent)
{
// Breakpoint here, debug normally and *then* call your URL
}
我啓動應用程序運行'open/Applications/MyApp.app',所以我嘗試傳遞'--debug',但沒有運氣附加調試器。我認爲這裏的複雜性在於它是一個Mac應用程序,我敢打賭一個控制檯應用程序可以正常工作。自定義命令的好處,如果我覺得我需要調試,我會使用它 - 我只需要讓自定義URL方案首先工作,我猜。 – jonathanpeppers
@jonathanpeppers編輯... – TheNextman
謝謝,現在應用程序已經打開時它會觸發斷點,但是如果應用程序尚未打開,它不會執行任何操作。有關於此的任何想法?無法從網址啓動應用程序? – jonathanpeppers