Menu

KeePass 2.09 released! Waiting for update...

zzserg
2009-09-14
2012-10-07
  • zzserg

    zzserg - 2009-09-14

    Subj

     
  • Thomas Richter

    Thomas Richter - 2009-09-18

    Maybe it'll be possible to create a PLGX File with the sources:
    http://keepass.info/help/v2_dev/plg_index.html#plgx

    I'll try it, if I have some time this weekend.

     
  • JB Engracia

    JB Engracia - 2009-09-23

    It doesn't look like it is possible to create a PLGX file without refactoring
    the code heavily. The long explanation is below, so stop reading and just take
    my word for it if you don't want to bother with the details.

    KeePass requires that the solution to create a PLGX for only contains one
    project file. The provider code (digitalbucket and FTP DLLs), which are
    contained in separate project files from the KeePassSync code (main DLL), are
    dependent on both KeePass AND KeePassSync code. This dependence means that you
    need to make sure that KeePassSync code gets compiled first, and the
    providers' code have access to the compiled KeePassSync code from KeePass'
    cache. It may be possible to compile KeePassSync to a DLL for 2.0.9 and
    generate PLGX format plugins for the providers, but having to recompile the
    main DLL for every new version defeats the purpose.

    There's 3 possible ways of refactoring the code to allow PLGX generation.

    The first option is to merge the providers' code with the KeePassSync code but
    you lose the ability of just dropping in a DLL/PLGX to add providers. This is
    perhaps the easiest to do. I'll try this myself and perhaps provide a download
    package elsewhere.

    The second option would be to somehow drop the KeePass_Sync dependence from
    the providers' code, which will allow you to not only provide a PLGX format
    for the KeePass_Sync main plugin, but also for the provider plugins. I'm just
    not 100% sure that the second option is possible though without changing the
    KeePass code itself. This is probably the best option if it can be done in the
    first place.

    The third option would be to create a similar plugin system to KeePass' PLGX
    format specifically for KeePassSync. Most likely the hardest to do, but it
    provides the same functionality as the second option and is sure to not need
    any code changes to KeePass itself.

    There's probably also a 4th option using unmanaged code, however, I'm not
    exploring the idea due to the fact that I consider it quite messy.

     

Log in to post a comment.

MongoDB Logo MongoDB