Some plugin & taskperformer requests

Posts   
 
    
MacDennis avatar
MacDennis
User
Posts: 50
Joined: 03-May-2005
# Posted on: 11-Oct-2005 21:50:14   

Hi,

Plugins and taskperformers are a very powerful way of doing custom things in the LLBLGen designer. There's only a minor gripe about developing them, the testing! Each time I need to test some changes to a plugin or taskperformer I have to:

  • Close the designer
  • Copy pluging and/or taskperformer to the LLBLGen installation directory
  • Start the designer
  • Open the project
  • Attach the VS.NET debugger
  • Do the magic in the designer and watch the results This becomes quite a tedious process after a while. Can this process be simplified? Maybe I am missing something?

It's possible to set an 'AdditionalGeneratorConfigFolder' in the project properties. Is it maybe possible that the designer also looks for custom taskperformer libraries in this folder? At the moment it seems that it doesn't do that.

Can we also have an 'AdditionalPluginsFolder' to store the custom plugins?

In general, I would like to see a situation where I can leave the default installation root of the LLBLGen designer as clean as possible. This makes upgrading easier. Another argument is that I would like to share plugins and taskperformers on a network share with the other designers.

And a final request, it is technically possible that the designer 'releases' the (custom) plugin and taskperformer libraries after usage? I would like to compile and use a new library without restarting the designer.

Just looking for ways to be even more productive. sunglasses

Otis avatar
Otis
LLBLGen Pro Team
Posts: 39614
Joined: 17-Aug-2003
# Posted on: 11-Oct-2005 23:54:38   

Add a post-build event so you copy the bin to the plugin folder go to the project properties in vs.net and set debugging to application and select llblgenpro.exe.

Then, when you hit F5 in the plugin project in vs.net, llblgen pro will start automatically. simple_smile

Task performers are easily tested using the command line code generator as well. Using the same technique.

I'll address the rest tomorrow.

Frans Bouma | Lead developer LLBLGen Pro
Otis avatar
Otis
LLBLGen Pro Team
Posts: 39614
Joined: 17-Aug-2003
# Posted on: 13-Oct-2005 10:54:44   

MacDennis wrote:

Hi,

Plugins and taskperformers are a very powerful way of doing custom things in the LLBLGen designer. There's only a minor gripe about developing them, the testing! Each time I need to test some changes to a plugin or taskperformer I have to:

  • Close the designer
  • Copy pluging and/or taskperformer to the LLBLGen installation directory
  • Start the designer
  • Open the project
  • Attach the VS.NET debugger
  • Do the magic in the designer and watch the results This becomes quite a tedious process after a while. Can this process be simplified? Maybe I am missing something?

More detailed: in your task performer vs.net project -> right click project -> properties -> Debugging (I'm doing this for vb.net, you use vb.net wink ) -> select 'Start external program' and fill in the complete path + application name of LLBLGenPro.exe.

I know it's utterly lame VB.NET 2003 doesn't have post-build steps, so that's a bit of a pain. You could overcome this by building on the command line, but it's a bit cumbersome, I admit.

It's possible to set an 'AdditionalGeneratorConfigFolder' in the project properties. Is it maybe possible that the designer also looks for custom taskperformer libraries in this folder? At the moment it seems that it doesn't do that.

Can we also have an 'AdditionalPluginsFolder' to store the custom plugins?

These elements are a core part of the application, as they rely on the assemblies of llblgen pro, so I think it's best to have them in the application folder.

In general, I would like to see a situation where I can leave the default installation root of the LLBLGen designer as clean as possible. This makes upgrading easier. Another argument is that I would like to share plugins and taskperformers on a network share with the other designers.

Uninstalling llblgen pro while you have custom dlls in folders is ok, these files are left there so installing a newer version on top of that will not overwrite them.

running plugins over a network share is not recommended as .NET doesn't like that very much, you have to configure security settings to be able to do that.

And a final request, it is technically possible that the designer 'releases' the (custom) plugin and taskperformer libraries after usage? I would like to compile and use a new library without restarting the designer.

The assemblies are loaded in-process, and .NET can't unload these again. I could load them into a separate appdomain but then I had to communicate them via remoting, and I found that a bit too much overkill.

Frans Bouma | Lead developer LLBLGen Pro