Results 1 to 6 of 6

Thread: New skin questions

  1. #1
    Newbie
    Join Date
    Oct 2011
    Posts
    5

    New skin questions

    I'm attempting to write a new skin, complete with new MainMenu. I've got my MainMenu.dll and some images in a new directory named OMC (i.e., my skin name) under the Skins directory. I've used the Settings Browser to set the UI->Skin to OMC. When I start openMobile, nothing happens. I believe it's crashing, but I get no debug log or output on the command line.

    I took a quick look at OM's source and it looks like it wants to load a UI.dll and it won't run if it can't load it. I don't know if that's what the problem is, but it seems likely it's some sort of problem (maybe one of many).

    I can see a UI.dll in the Default skin folder and I found the source for it. Can I just copy it to my skin folder? What other dependencies am I missing? What's its purpose?

    So my first question is: what am I supposed to do to make a new skin from scratch? Is there any real documentation on this process?

  2. #2
    Newbie
    Join Date
    Oct 2011
    Posts
    5
    So I've now created a basic UI.dll too. It only defines a "background" panel. The standard UI class seems to define a volume control panel and a media control panel, but I left those out for now just to get something on the screen.

    Still no luck. OM still just quits (dies?) when I start it. I'm now using the "-skinpath=OMC" command line option instead of the UI.Skin setting.

    So I'm still stuck and I'm willing to entertain any suggestions or tips.

    I think my next step will be to attempt to build OM itself from the 0.8 release branch and add some debugging gunk. It appears the Core.cs file doesn't do anything useful when an uncaught exception is thrown, which I suspect is what's happening. Seems to be it be logging that crap.

  3. #3
    Newbie
    Join Date
    Oct 2011
    Posts
    5
    Well that didn't go well. I'm able to build the solution (after converting it for Visual C# 2010 Express) but when I run it, it crashes. If I try to run it in the debugger, some sort of exception down in the display stuff gets thrown.

    My C# is very rusty and I've never been a "real" Windows programmer. I'm stuck now.

    Help!

  4. #4
    Maximum Bitrate Borte's Avatar
    Join Date
    Jan 2006
    Location
    Norway
    Posts
    529
    Hi frdfsnlght,

    Sorry for the late reply, I've been away of the forums for a couple of days.

    Did you download the latest source from the svn server? Or did you download one of the official releases?

    OM Has a debug feature as long as the !OMDebug.dll (or OMDebug.dll) in the Plugins folder. The debug log is saved under C:\Users\<UserName>\AppData\Roaming\openMobile\Deb ug.txt.
    This file should provide some information about what happens. If OM crashed hard then you'll also see a AppCrash file in the same folder.

    If you want to you can either attach the debug log to a post here or PM it to me and I'll help you out (it's hard to help out before I see the log).

    Also make sure you use the latest code as a LOT of development has been done since the 0.8 release but be aware that the code in the svn server is in progress so certain bugs might be present.

    When it comes to skin design OM requires both a MainMenu.dll file and a UI.dll file. The MainMenu file is the starting point of the skin (with the "main menu") and the UI file is the part of the skin that you want to keep on top of everything else like media controls and so on.
    Failure is not an option...
    __________________________________________________ ______________________________
    The only full multizone / multiscreen cross platform open source Front End -> OpenMobile

  5. #5
    Newbie
    Join Date
    Oct 2011
    Posts
    5
    Holy crap! Thanks for the reply. I was beginning to think it was over before it began.

    I've done a few things, so I'll try to be as clear as I can. I appreciate any help you can give. I'm doing all these things under Windows 7, 32 bit, Visual C# 2010 Express. Also, for background, I'm no expert at Windows programming or .NET, but I've done Java and tons of other stuff for 20+ years. I don't use Visual Whatever products very much, so I'm sometimes sketchy on MS terminology, but I'm OK with the concepts.

    I installed 0.8 binaries (including OMDebug.dll). I also checked out the latest from SVN (for sample code purposes). Running OM normally (with -screencount=1) works as expected and produces a debug log:

    Code:
    ------------------Software-------------------
    OS: Windows 7
    Framework: Microsoft .Net v4.0
    Open Mobile: v0.8.0.6
    Open GL v.3.2.9752 Compatibility Profile Context
    ------------------Hardware-------------------
    Processors: 2
    Architecture: x86
    Screens: 2
    Graphics Card: 
    ----------------Inital Assemblies-------------
    0.000: LOADED (mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089)
    0.000: LOADED (Open Mobile, Version=0.8.0.6, Culture=neutral, PublicKeyToken=null)
    0.000: LOADED (OpenMobile.Framework, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null)
    0.000: LOADED (OpenMobile.Graphics, Version=1.0.0.201, Culture=neutral, PublicKeyToken=null)
    0.000: LOADED (System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089)
    0.015: LOADED (Mono.Data.Sqlite, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756)
    0.015: LOADED (System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089)
    0.015: LOADED (System.Transactions, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089)
    0.015: LOADED (System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a)
    0.015: LOADED (System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a)
    0.015: LOADED (System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089)
    0.031: LOADED (System.EnterpriseServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a)
    0.031: LOADED (UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null)
    0.031: LOADED (MainMenu, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null)
    0.031: LOADED (!OMDebug, Version=0.5.0.0, Culture=neutral, PublicKeyToken=null)
    0.031: LOADED (AudioRouter, Version=1.1.0.0, Culture=neutral, PublicKeyToken=null)
    0.031: LOADED (DirectShowLib-2005, Version=2.0.0.0, Culture=neutral, PublicKeyToken=67e7b740cdfc2d3f)
    0.031: LOADED (HDRadioComm, Version=1.6.0.3, Culture=neutral, PublicKeyToken=6059837a14fef3b8)
    0.046: LOADED (OMMediaDB, Version=0.0.3.0, Culture=neutral, PublicKeyToken=null)
    0.046: LOADED (OMPlayer, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null)
    0.046: LOADED (System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089)
    0.046: LOADED (OMSerialGPS, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null)
    0.062: LOADED (Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a)
    0.062: LOADED (SerialGPS, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null)
    0.062: LOADED (OMVisteonRadio, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null)
    0.062: LOADED (RemovableDB, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null)
    0.062: LOADED (NewMedia, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null)
    0.078: LOADED (OMDir, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null)
    0.078: LOADED (OMNotify, Version=0.1.0.0, Culture=neutral, PublicKeyToken=null)
    0.078: LOADED (OMSettings, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null)
    0.093: LOADED (OSK, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null)
    ---------------------------------------------
    0.296: playlistChanged(0,)
    ---------------------------------------------
    0.296: playlistChanged(0,)
    0.296: playlistChanged(1,)
    0.312: playlistChanged(3,)
    0.327: playlistChanged(4,)
    aylistChanged(0,)
    0.296: playlistChanged(1,)
    0.296: playlistChanged(2,)
    0.343: playlistChanged(5,)
    0.343: playlistChanged(5,)
    0.343: playlistChanged(6,)
    0.343: playlistChanged(5,)
    0.343: playlistChanged(5,)
    0.343: playlistChanged(6,)
    0.343: playlistChanged(5,)
    0.343: playlistChanged(6,)
    0.343: playlistChanged(7,)
    0.483: RenderingWindowResized(0,,)
    0.592: systemVolumeChanged(18,0,)
    0.608: systemVolumeChanged(18,1,)
    0.608: systemVolumeChanged(67,2,)
    1.263: LOADED (System.Management, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a)@file:///C:/Windows/assembly/GAC_MSIL/System.Management/2.0.0.0__b03f5f7f11d50a3a/System.Management.dll
    2.012: LOADED (CustomMarshalers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a)@file:///C:/Windows/assembly/GAC_32/CustomMarshalers/2.0.0.0__b03f5f7f11d50a3a/CustomMarshalers.dll
    6.988: TransitionToPanel(0,MainMenu,Quit)
    7.238: ExecuteTransition(0,Crossfade,)
    9.921: closeProgram(,,)
    10.935: closeProgram(,,)
    I then deleted the debug log, compiled my UI.dll and MainMenu.dll, and put those dll's and the image resources in an OMC directory under OM's Skins directory. I then ran OM again (with -screencount=1 -skinpath=OMC). No debug output is produced. None. OM doesn't do anything and the process dies right away. Running the command to start OM on the command line also produces no output on the console.

    So...

    I navigated down into "openmobile\branches\0.8 Release\FrontEnd" of the checked out code and opened OpenMobile.sln. I had to change the path for one of the sub-projects (OpenMobile.Email) because it was wrong. I did a clean build and tried to run it. A Windows dialog opens telling me "OpenMobile has stopped working", and again, no debug output.

    So...

    I navigated down into "openmobile\trunk\FrontEnd" of the checked out code and opened OpenMobile.sln. Didn't have to change any paths this time. I did a clean build and tried to run it. Same result as last time; "OpenMobile has stopped working", and again, no debug output.

    That's where I am. Now what?

  6. #6
    Maximum Bitrate Borte's Avatar
    Join Date
    Jan 2006
    Location
    Norway
    Posts
    529
    I think your problem is that 0.8 and current plugins is not compatible. I think you'd be better off by developing against the latest svn or by using the trunk builds which can be downloaded here: http://openmobile.sourceforge.net/main/trunk/ (Direkt link to latest svn: http://openmobile.sourceforge.net/ma...61-windows.zip).

    Does the folder where you found the debug log file also contain a appcrash file?

    Where did you put your compiled UI.dll and MainMenu.dll? In the skin folder of the the trunk version? What framework did you build your dll's against? The 0.8 and the latest svn is not compatible with each other so if you compile against 0.8 and try to run this in any other release that the version you built it against it will fail. This problem is now corrected in the latest builds.

    If you want to, it's easier for me to help you along if you send me your code, then I'can get it up and running for you.
    Failure is not an option...
    __________________________________________________ ______________________________
    The only full multizone / multiscreen cross platform open source Front End -> OpenMobile

Similar Threads

  1. Some More Questions for IG 4 AND DFX SKIN
    By funkyphil in forum GPS
    Replies: 4
    Last Post: 04-10-2008, 07:59 PM
  2. Skin questions
    By Mańana in forum Freeway
    Replies: 7
    Last Post: 09-12-2006, 11:34 PM
  3. Making a skin for my car, few questions
    By Thrasher in forum Road Runner
    Replies: 3
    Last Post: 12-06-2005, 12:23 PM
  4. FP Skin Questions
    By blazinlow in forum FrodoPlayer
    Replies: 23
    Last Post: 10-26-2004, 09:25 PM
  5. Skin Questions
    By Chilly in forum ME Archive
    Replies: 1
    Last Post: 01-22-2004, 11:01 AM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •