Kodi Community Forum
XBMControl - a compact remote XBMC controller app for Windows (Open Source C# .NET) - Printable Version

+- Kodi Community Forum (https://forum.kodi.tv)
+-- Forum: Support (https://forum.kodi.tv/forumdisplay.php?fid=33)
+--- Forum: Supplementary Tools for Kodi (https://forum.kodi.tv/forumdisplay.php?fid=116)
+--- Thread: XBMControl - a compact remote XBMC controller app for Windows (Open Source C# .NET) (/showthread.php?tid=38120)

Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24


- topfs2 - 2009-02-10

Just a FYI, I tried to run this on linux and it seems you are using "\" in the paths, if you switch it to "/" it would work on linux aswell.

I couldnĀ“t get mono to compile it and couldnt verify thats all that needs fixing for linux/osx though.

Cheers,
Tobias


- Bram77 - 2009-02-10

I've tried it too. But I think there are also some .NET 3.5 specific things that need changing since Mono doesn't have 3.5 support yet. I will try to make one version that will install on both Windows and Linux. To keep maintenance simple Smile


- Kabooga - 2009-02-13

Bram77,

I've decided to make a Google code project from your base with my changes. I figure that a seperate codebase would be workable.

Here's the link http://code.google.com/p/xbmcnavigation/

Things added:
1) Save and Load Music Playlists.
2) Listing of video library. Also enqueuing of video.
4) Navigator window for handling of DVD Menus. Also works for moving around XBMC menus.
5) Moved the language xml files into resources. I wanted to embed the files so the whole utility would be contained in one executable.

I will be playing around with this more before putting an executable for download. But I figure you can look at the changes if your interested.

Also, my artistic skills are terrible. The navigator window looks "unpolished".

Regards,

Kabooga


- Jsmit - 2009-02-13

Very cool app guys!

I'm not that good with code myself, but functionality to re-arrange playlists (drag-drop), move files up or down would be nice. That does not seem to work currently?

Rgds, Johan


- Kabooga - 2009-02-14

Downloaded XBMCNavigation executable (version 0.5.0) to google code project. You will only need the executable and .NET 3.5 for it to work.

Direct link http://code.google.com/p/xbmcnavigation/downloads/list

Jsmit - Added ability to rearrange the playlist. Merely use left mouse button to drag and drop. Seems to be working fine. Try it out if you like.

Enjoy,

Kabooga


- Livin - 2009-02-14

show screenshot crashes app...

Code:
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.FormatException: Invalid character in a Base-64 string.
   at System.Convert.FromBase64String(String s)
   at XBMC.XBMC_Controls.Base64StringToImage(String base64String)
   at XBMCNavigation.MainForm.cmsShowScreenshot_Click(Object sender, EventArgs e)
   at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
   at System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
   at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
   at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
   at System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)
   at System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)
   at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
   at System.Windows.Forms.ToolStripDropDown.OnMouseUp(MouseEventArgs mea)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   at System.Windows.Forms.ToolStrip.WndProc(Message& m)
   at System.Windows.Forms.ToolStripDropDown.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
    CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
XBMCNavigation
    Assembly Version: 1.0.0.0
    Win32 Version: 1.0.0.0
    CodeBase: file:///F:/_DOWNLOADS/XBMCNavigation.exe
----------------------------------------
System.Windows.Forms
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Xml
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Configuration
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer



- Kabooga - 2009-02-15

Livin,

Thanks for the info. Removed attempt to download the show screen, at least for now. The video information window will still show other information such as plot, votes, MPAA rating, etc.

New version 0.5.1 at http://code.google.com/p/xbmcnavigation/downloads/list.

Regards,

Kabooga


- Jsmit - 2009-02-15

Hi Kabooga,

Tnx for the update!

Two more questions currently:
1) Is there a possibility to implement resizing the playlist window (now I cannot see the song title because of long smb paths in the list).

2) Using 5.1 I get the following error using the media browser:

Quote:See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.IndexOutOfRangeException: Index was outside the bounds of the array.
at XBMC.XBMC_Media.GetDirectoryContentNames(String directory, String mask)
at XBMCNavigation.MediaBrowserF1.ExpandSharedDirectory()
at XBMCNavigation.MediaBrowserF1.ShowSongs(Object sender, MouseEventArgs e)
at System.Windows.Forms.Control.OnMouseUp(MouseEventArgs e)
at System.Windows.Forms.TreeView.WmNotify(Message& m)
at System.Windows.Forms.TreeView.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
XBMCNavigation
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/Program%20Files/XBMCnavigator/XBMCNavigation_0.5.1.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Xml
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Configuration
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.



- Kabooga - 2009-02-15

Great input guys.

New version (0.5.2) put on the code project. http://code.google.com/p/xbmcnavigation/downloads/list

1) Fixed crash for most cases when showing shares (still a little work needed).
2) Attempt to remove showing the paths in the song playlist - Jsmit reported.

Can you please put the issues at http://code.google.com/p/xbmcnavigation/issues/list. Looks like one issue has already has been put in. I don't want to overload this thread with issues from the code.


Regards,

Kabooga


- Livin - 2009-02-15

I must ask... why change the name?

XBMControl was just fine... you are controlling the remote system.

XBMC Navigation?
"Navigation" is a minor feature of the overall app, IMO... "Control" is more appropriate, again IMO


- Bram77 - 2009-02-15

Kabooga Wrote:Great input guys.

New version (0.5.2) put on the code project. http://code.google.com/p/xbmcnavigation/downloads/list

1) Fixed crash for most cases when showing shares (still a little work needed).
2) Attempt to remove showing the paths in the song playlist - Jsmit reported.

Can you please put the issues at http://code.google.com/p/xbmcnavigation/issues/list. Looks like one issue has already has been put in. I don't want to overload this thread with issues from the code.


Regards,

Kabooga

Hadn't thought of it yet. But wouldn't be more logical if I'd simply give you access to the XBMControl google code SVN. We could work on it together...even though I don't really have the time for it now.

The video section in the Media Browser is nice! Showing info and all Smile
It crashes when a directory in a shared directory is selected now though...

Drag/drop support was high on my todo list, great!
Some more things in my todo list that more people might like...

Quote:- Minimize/maximize buttons in Music Browser
- Remove "always on top" of music browser (allow keeping browser window open and controlling XBMControl)
- Add configuration option to allow remembering music browser selection when closing (do not destroy the window, but simply hide it...optionally!)
- Store location and size for Music Browser/Playlist and player
- Allow theming (lot of work)
- Save playlists
- Load playlists
- Make the mini-volume control more easily accessible (at this point middle mouse on tray icon, try to make use of single left click without letting it show when double clicking)
- Add mute checkbox to mini-volume control

BUGS
- Play still isn't showing when the application is started even though it should (was opened when closing app)
- Rewrite checking connectivity with XBMC (again...)



- Kabooga - 2009-02-16

Bram77,

Adding me to the XBMControl code project in Google code would probably be the best. That way we could work together on one codebase (and keep the same name as Livin observed).

Regards,

Kabooga


- Bram77 - 2009-02-19

I gave porting to mono a serious try, but there is to much that needs to be changed. It will become a mess, so I'm going to reed some tutorials about how to write Windows.Forms apps in MonoDevelop (so the app will be cross platform in the future.... Linux, Windows and MacOS). This will take some time (think months), scince I don't have a lot of spare time! I'll be calling it XBMControl Evo. Meanwhile development of the current version can go on (ofcourse).

If anyone knows a good mono tutorial for getting started with Windows.Forms with MonoDevelop, or has any other suggestion about getting started with MonoDevelop, please let me know! I've played around with it a bit and it seems a bit less straight forward than the Excelent! Visual C# Express by Microsoft (I never would have thought I would be enthousiastic about anything made by M$, except for the old Xbox).


- tytherman - 2009-02-20

is it possible to use this for remote control of xbmc on windows?


- Bram77 - 2009-02-20

It doesn't matter on what platform XBMC runs. As long as the webserver in XBMC is enabled it will work.