Jump to content

Most current SDK?


daffy

Recommended Posts

I need some distraction, I want a stable remote control.

 

As mentioned elsewhere a little while ago, I have access to a Bluetooth-enabled mobile and a Bluetooth USB stick that seem to work reliably (together) using Puppetmaster (http://www.lim.com.au/PuppetMaster/).

 

My current idea of fun distraction therefore is to create a DVBViewer plugin that exposes an in-process COM server (object instance) which will be driven by the remote control server application (which allows writing VBScript or JScript). IOW, a COM bridge:

 

* Press button/key on mobile

* Client application on mobile send data via Bluetooth

* Server application on PC receives data via Bluetooth

* Server application uses data to control DVBViewer via VBScript or JScript

(and that preferably via COM)

 

The reason of this posting? The DVBViewer plugin documentation ("the SDK") is about 18 months older than the latest DVBViewer release. Before embarking on this endeavour, I'd like to ensure that the fun factor is maximized by knowing that the SDK information still applies...

 

Any thoughts?

Link to comment
via VBScript or JScript

 

Without sending messages to the DVBViewer window it is impossible (at least with DVBV 3.0).

 

AFAIK VBScript doesn't provide Send/PostMessage. Does JScript? However, it can be done by writing a command line tool that transforms command line parameters to messages (shouldn't be too difficult for you).

 

In DVBViewer GE it's already built in (-x plus number).

 

By sending messages you can do almost everything that is listed under Options/Control. I'm sure Christian will send you an up-to-date list of the control codes if you ask him for that.

 

Have a look at this table. Most of the numbers should also be valid for DVBV 3.0 (up to 101, I think, but I don't know how much of it has been changed in DVBV 3.0). The numbers above 101 are special DVBViewer GE commands.

 

Proceed as follows:

 

uses Windows;

const
 WM_DVBVIEWER = $B2C2;
 MSG_REMOTE = $0815;
 MyCommand = 37; //Opens EPG window
var
 DVBHandle: HWND;

begin
 DVBHandle := FindWindow(nil,'DVBViewer'); 
 if DVBHandle <> 0 then
   SendMessage(DVBHandle,WM_DVBVIEWER,MSG_REMOTE,MyCommand+100);
end;

Link to comment
via VBScript or JScript

AFAIK VBScript doesn't provide Send/PostMessage.

 

That's why I talked about writing a DVBViewer plugin to act as a COM bridge (so that the remote control server can talk via COM to the plugin which in turn ...) :-)

 

Thanks for the info!

Link to comment

this case i strongly recommend the SVDR Host plugin. It should suite your needs and is a VDR Interface compatible wrapper. Concerning the complete SDK i guess i should release a complete interface list. Right now it is a mixture between Sendmessage and Com like interface plus some rudimentary obsolete functions which allow some downward compatibility.

 

Christian

Link to comment
That's why I talked about writing a DVBViewer plugin to act as a COM bridge

 

I see. Didn't read it carefully enough (skip-every-second-line-state when reading ;) ).

 

Yes, nice. It will save FindWindow. :) And ShellExecute in the script. A cleaner solution.

 

The Sleeptimer Plugin source code in the Service Center provides a basic framework, including a menu item in the Plugins Menu.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...