Windows App to OSX Guidance / Project for Hire

JMannJMann USMember

I'm looking for a little guidance and/or someone who may be interested in some freelance work.

I have an existing .NET solution made up of a few projects (C# console project, Windows Service, Installer Project). The installer wizard asks for a few parameters (database string, pwd), installs the console project, windows service, and starts then starts service. The service then makes various calls to the console executable on a scheduled basis.

I would like to port this project over to OSX and given my familiarity with C#, I'm exploring Xamarin / Mono Mac.

Here is where I need some Guidance:

  1. Installer - it appears that you need to create a Xamarin.Mac project to get the packaging options within the IDE. Console projects do not offer the packaging menu option. Creating a Xamarin.Mac project creates UI which I don't need. I suppose I could use the Xamarin.Mac projects .xib to get the details that the Windows installer prompted for. If I do that is there a way to call the Xamarin.Mac project from command line without having a dialog shown?

  2. Service - I don't know how services work on a Mac. I've read that you can schedule CRON jobs which I suppose I could leverage. Any guidance on how to accomplish this would be helpful.

Thanks in advance,



  • Hi @JMann! Most Mac applications won't require an installation process and I suggest you go that way. Now I don't know much about your application. Distribution? What kind of users will use it? Is there a configuration modification process?

    In any case, I suggest you make a small UI application that keeps an icon in system tray and offer a preference pane that you could use for configuration. That application could be launched at OSX boot and could hold a CRON scheduler like Quartz. Then instead of having a console application, a simple assembly would suffice. That kind of application, apart from using Quartz if you never did, seems pretty basic. The samples probably cover what you would need to accomplish.

Sign In or Register to comment.