News:

HOT TIP! Exploring the commands packaged in VC's standard configurations is a great way to learn how to build your own. You can also clone a command as a starting point: just right-click and select "Clone" (or type Alt-C).

Main Menu

Custom Plugin Design

Started by MrAJP, October 23, 2012, 03:01:49 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

mr.niki


DexDeadly

Hello,

Is the attached 2012 Blank as well as the SharpDevelop still the way to go?  Is there an updated version for VoxCommando2?  I'm looking to try and create something for the Wunderlist API.  I saw a thread before where it was discussed using there email and SMTP within voxcommando but I"m not sure if that was due to no API at the time. There is a full API now available here

https://developer.wunderlist.com/documentation

I'm looking to see if I can create something now using this api and the template.  Please let me know if there is a newer template to use or not.

jitterjames

#32
Yes you can use it. Just reference the latest plugininterface.dll and switch to .Net 4.5.1

The plugin template itself doesn't have much in it that would need to change.

If I can find time I'll upload a newer one but really there is no need.

jitterjames

Better if you can use c# and visual studio. I can't imagine why anyone would want to use anything else!

DexDeadly

Sounds good, I just need to brush up on those languages.  I haven't touched them in years been mostly programming PHP/MySQL pages.  I'll go ahead and make sure they poing to .NET 4.1.  Hopefully i can get some real time aside to work on this :).

jitterjames

Sorry, I meant 4.5.1

I will correct my post above.

jitterjames

#36
Here is something a bit more recent to start from

nime5ter

#37
We'll try to get some proper documentation up when we have more time. For now, here are a few notes to get you started.
----

NOTE: References here to C:\VCROOT refer always to your VoxCommando folder (i.e., your VC installation).

1. Choose a name for your plugin.

Plugin name should be short. It will be used as the first prefix for all action strings, the plugin folder name, and the dll name.

It must be unique, so please verify that it will not conflict with existing VoxCommando plugin and dll file names.

2. Create an empty folder within your C:\VCROOT\Plugins folder with the same name as your assembly (i.e. your plugin name).

A plugin folder in VoxCommando should ordinarily contain just 3 files*:


  • actions.xml (see other plugins for examples)
  • icon.png (your icon should be 45x45 pixels)
  • yourpluginname.dll

The file options.xml should only be created when the user first clicks "Save Options" and any default values you want to use should normally be set in your code.

*Unless you need to reference additional dlls. First check whether the dll you need to reference is already being used in VC. If so, verify that you are using the same version of that dll, and make sure that "copy local" is set to false so that you are not creating a duplicate copy of that dll when you build.

3. In Visual Studio, name your plugin assembly.  Project --> "Application" -->Assembly name is currently "Blank". Change it to name of your plugin.

4. Under Project Properties, set your target framework to .Net 4.5.1. (in the latest template just above, it should be set already to 4.5.1, but double-check.)

Under Post Build, event command line should read:

XCOPY "$(TargetDir)*.dll" "C:\VCROOT\plugins\$(TargetName)\" /Y /S

In other words, remove the "REM", which turns that line into a remark, and also edit the line to point to your existing VCROOT path.

5. In your C:\VCROOT folder, the PluginInterface.dll already exists. In Visual Studio, you should make a reference to this dll file. Then right-click that reference and make sure "Copy Local" is set to false. We do not want an extra copy of the same PluginInterface.dll ending up in your plugin folder when you build the project.
TIPS: POST VC VERSION #. Explain what you want VC to do. Say what you've tried & what happened, or post a video demo. Attach VC log. Link to instructions followed.  Post your command (xml)

DexDeadly

Hello  Nime5ter. 

Thanks for the run down.  Thats very helpful.  I have download the 2016 Plugin blank which loads up in the SharpDevelop.  I have already started naming things and working on figuring out how exactly I'll need to do this.  It has been a very long time since I've touched C# :).  However I'm sure I can pick it right up.  I'm expecting this to be a challenge, but in a good way.  Again I appreciate those notes.