Hello!
My problem today is tricky....
evertytime i activate the plugin i want to send a commad to VDJ to clone the deck.
And now:
SendCommand("clone_deck 3",1);
does not work.
This one works:
SendCommand("clone_deck",1);
Everytime if i want to send an action with a space between, the send command does not work.
How can i get this fixed?
Best regards, C.Hackl
My problem today is tricky....
evertytime i activate the plugin i want to send a commad to VDJ to clone the deck.
And now:
SendCommand("clone_deck 3",1);
does not work.
This one works:
SendCommand("clone_deck",1);
Everytime if i want to send an action with a space between, the send command does not work.
How can i get this fixed?
Best regards, C.Hackl
Posted Thu 19 Apr 12 @ 8:22 am
What value are you returning for rclsid in DllGetClassObject?
Posted Thu 19 Apr 12 @ 10:06 am
SBDJ wrote :
What value are you returning for rclsid in DllGetClassObject?
Since it is my first VDJ plugin, i have to tell you, that i don't know where to put it to the code and what value I have to take :(
I've read the SDK, serached all on google and the VDJ site.... but there are still questions i have and one of them ist that.
But i dont whant to ask evry silly question, i want to learn it on my own :P - and i hop i'll get that :D
Would you be so kind to help me with that DllGetClassObject / SendCommand thing?
Best regards, C.Hackl
Posted Thu 19 Apr 12 @ 10:17 am
i'm using the layouts of microsoft visual studio 2008 that i've found here at the page and this shows me this:
HRESULT VDJ_API DllGetClassObject(const GUID &rclsid,const GUID &riid,void** ppObject)
{
// This is the standard DLL loader for COM object.
// You don't need to change anything in this function.
if(memcmp(&rclsid,&CLSID_VdjPlugin,sizeof(GUID))!=0) return CLASS_E_CLASSNOTAVAILABLE;
if(memcmp(&riid,&IID_IVdjPluginDsp,sizeof(GUID))!=0) return CLASS_E_CLASSNOTAVAILABLE;
*ppObject=new Cslipmode();
return NO_ERROR;
Or do i have to change something?
HRESULT VDJ_API DllGetClassObject(const GUID &rclsid,const GUID &riid,void** ppObject)
{
// This is the standard DLL loader for COM object.
// You don't need to change anything in this function.
if(memcmp(&rclsid,&CLSID_VdjPlugin,sizeof(GUID))!=0) return CLASS_E_CLASSNOTAVAILABLE;
if(memcmp(&riid,&IID_IVdjPluginDsp,sizeof(GUID))!=0) return CLASS_E_CLASSNOTAVAILABLE;
*ppObject=new Cslipmode();
return NO_ERROR;
Or do i have to change something?
Posted Thu 19 Apr 12 @ 11:04 am
That means you are using the v5 SDK, hence the old SendCommand format.
If you use the latest SDK from here:
http://www.virtualdj.com/wiki/Developers.html
And use: if(memcmp(&rclsid,&CLSID_VdjPlugin6,sizeof(GUID))!=0) return CLASS_E_CLASSNOTAVAILABLE;
This means you can then use VDJScript commands.
If you use the latest SDK from here:
http://www.virtualdj.com/wiki/Developers.html
And use: if(memcmp(&rclsid,&CLSID_VdjPlugin6,sizeof(GUID))!=0) return CLASS_E_CLASSNOTAVAILABLE;
This means you can then use VDJScript commands.
Posted Thu 19 Apr 12 @ 7:30 pm
Ok i've downloadet and saved all those files to the SDK.
But now i get a lot of Errors in the Basic Plugin where i want to write the code. Is there any basic plugin coder for the SDK V6?
Best Regarts
But now i get a lot of Errors in the Basic Plugin where i want to write the code. Is there any basic plugin coder for the SDK V6?
Best Regarts
Posted Fri 20 Apr 12 @ 1:43 am
Ok at the moment i get an error here:
VdjPlugin.h:
This is the initalisation in the plugin:
Vistual Studio tells me:
error C2375: 'DllGetClassObject': Newdeffinition, different attachment
It tells me a mistake at the deklaration od an "DllGetClassObject"
Regards
VdjPlugin.h:
//////////////////////////////////////////////////////////////////////////
// GUID definitions
#ifndef VDJCLASSGUID_DEFINED
#define VDJCLASSGUID_DEFINED
static const GUID CLSID_VdjPlugin6 = { 0x37db664a, 0x6cf1, 0x4768, { 0xbc, 0x69, 0x32, 0x68, 0x13, 0xbf, 0xb, 0xf4 } };
static const GUID CLSID_VdjPlugin5 = { 0x2e1480fe, 0x4ff4, 0x4539, { 0x90, 0xb3, 0x64, 0x5f, 0x5d, 0x86, 0xf9, 0x3b } };
static const GUID IID_IVdjPluginBasic = { 0x865a6bbe, 0xed4b, 0x4bd5, { 0x93, 0xfe, 0x25, 0xa6, 0x26, 0xe2, 0x56, 0x1f } };
#else
extern static const GUID CLSID_VdjPlugin6;
extern static const GUID CLSID_VdjPlugin5;
extern static const GUID IID_IVdjPluginBasic;
#endif
//////////////////////////////////////////////////////////////////////////
// DLL export function
#ifndef NODLLEXPORT
#ifdef __cplusplus
extern "C" {
#endif
VDJ_EXPORT HRESULT __stdcall DllGetClassObject(const GUID &rclsid,const GUID &riid,void** ppObject);
#ifdef __cplusplus
}
#endif
#endif
This is the initalisation in the plugin:
HRESULT __stdcall DllGetClassObject(const GUID &rclsid,const GUID &riid,void** ppObject)
{
// This is the standard DLL loader for COM object.
// You don't need to change anything in this function.
if(memcmp(&rclsid,&CLSID_VdjPlugin6,sizeof(GUID))!=0) return CLASS_E_CLASSNOTAVAILABLE;
if(memcmp(&riid,&IID_IVdjPluginDsp,sizeof(GUID))!=0) return CLASS_E_CLASSNOTAVAILABLE;
*ppObject=new Cmy_plugin4();
return NO_ERROR;
}
Vistual Studio tells me:
error C2375: 'DllGetClassObject': Newdeffinition, different attachment
It tells me a mistake at the deklaration od an "DllGetClassObject"
Regards
Posted Fri 20 Apr 12 @ 2:21 am
Ok thanks i got it:
I addet at first lines at my pluging:
I addet at first lines at my pluging:
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#include "vdjDsp.h"
Posted Fri 20 Apr 12 @ 2:48 am
That'll sort it - #define WIN32_LEAN_AND_MEAN :)
Posted Fri 20 Apr 12 @ 2:20 pm
Big thanks man!
Would it be possible to update the SDK for Visual Studio 2008, so that you are able to load a effectlayout if you start it?
I got now all and i exported a working effekt. But till a releas it will take some time, that i can get clear with c++. I just learnd Visual Basic at scool an c++ is a bit different :P
Thanks for help,
Regards, C.hackl
Would it be possible to update the SDK for Visual Studio 2008, so that you are able to load a effectlayout if you start it?
I got now all and i exported a working effekt. But till a releas it will take some time, that i can get clear with c++. I just learnd Visual Basic at scool an c++ is a bit different :P
Thanks for help,
Regards, C.hackl
Posted Sat 21 Apr 12 @ 8:58 am