Trying to build bare extension template, VS2010 gives me 'can't access Project1.sdlplugin, used by another process'

I am trying to build an extension for Trados 2014.  It seems as though there are new SDK components, but no new SDK, so I am using the older SDK posted here, which seems to dump its output into SDL\SDL Trados Studio\11 -- is that much right?

I am trying to build the project template with no modifications at all, just to prove I can get that far before I write a line of code.  I generated a strong name with the .NET "sn" tool, and indicated the file generated in both AssemblyInfo.cs and the Project "Signing" properties.

No matter what I do to get around it, including hand-delete steps in the BuildEvents, VS 2010 gives me "MSBUILD : error PFE403: The process cannot access the file 'c:\Users ...... 11\Plugins\Packages\Plug-in Project1.sdlplugin".  Of course, I have done this from a freshly-booted machine and hand-deleted Project1 artifacts in that directory before even bringing up Visual Studio.

Has anyone else encountered this problem? I've seen reports on the web of similar problems with DLL's, but the ways of getting around it don't seem to work for the .sdlplugin file.

Any help would be appreciated, for I can't write the first line of code until this is conquered.

Thanks

Bernie

  • Hi Bernie, the SDKs have been updated and there are new ones for the new Integration API.  You can find them here:

    http://www.translationzone.com/openexchange/developer/sdk.html

    I can’t answer your other question I’m afraid, but I’m sure someone here can.  I’ll ask someone to take a look.

    Regards

    Paul

    Paul Filkin | RWS Group

    ________________________
    Design your own training!

    You've done the courses and still need to go a little further, or still not clear? 
    Tell us what you need in our Community Solutions Hub

  • Hi, Paul.

    I was using the latest materials as downloaded a week before from your site. I was not able get to the point where I needed the Integration API.

    Bernie

  • try changing the build output path from 'roaming' to 'local'

    example:

    change

    C:\Users\Patrick\AppData\roaming\SDL\SDL Trados Studio\11\Plugins\Packages\

    to

    C:\Users\Patrick\AppData\local\SDL\SDL Trados Studio\11\Plugins\Packages\

  • Hey, PHarnett!  That did it, and made my day!  Many thanks!

    Bernie

  • also remember to remove that compiled plugin from the roaming folders (i.e. /packages etc...) otherwise SDL Studio will complain that they exist in both places :-)

  • While I now can build it into Local/..../Packages successfully, the "deployment" documentation states that I must move it (i.e., the .sdlplugin file) into Roaming/..../Packages before Trados will recognize it.  I copied what I had built into Local/.../Packages into Roaming/.../Packages, restarted Trados, and yet, I do not see it under Add-Ins->Plug-Ins  (where you say it should see two of them, in fact, it seems to see neither of them).

    How can I debug this?

    Thanks again

    Bernie

  • Hi Bernie,

    I had a quick chat with a developer who gave me this info that might help (based on his experience)...

    I don’t think it should cause any problem compiling into the local directory and ignoring the roaming directory... seem remember testing this a while back...

    Try this:

    Keep the output path for the development project pointing to the local directory (for debug and release)

    Roaming directory
    Remove the .plugin from {roaming} /packages directory
    Remove the unpacked plugin folder from the {roaming} /unpacked directory

    Local directory
    Leave the .plugin in the {local} /packages directory
    Remove the unpacked plugin folder from the {local} /unpacked directory

    Now launch Studio 2014, Studio should read your plugin correctly.

    Note: Might be that you need to delete the unpacked plugin folder from the {local} /unpacked directory each time you compile a new build so that studio re-explodes the archive -> recreating that /unpacked folder from the compiled .plugin each time; think I remember coming across an issue like this a few weeks ago but can’t remember the particulars; worth a try.

    if this doesn't work, then simply go back to compiling everything into the {roaming} directory again... the plugin should get compiled correctly before you receive the access violation error message; in this case remember to delete the .plugin and /unpacked folder from the {local} directories.

    I hope this helps.

    Regards

    Paul

    Paul Filkin | RWS Group

    ________________________
    Design your own training!

    You've done the courses and still need to go a little further, or still not clear? 
    Tell us what you need in our Community Solutions Hub

  • None of this seems to help.  I have deleted one .sdlplugin and its sibling Unpacked directory and then the other, rebuilding to the Roaming directory (getting and ignoring the access violation message), and the plugin never shows up in 2014.

    Is it possible that the fact that there is nothing in the plugin other than the resource and definition files is contributing to the problem? Shouldn't Trados say -something- if it sees the plugin and it is somehow inadequate?

    Bernie

  • Hi Bernie,

    Can you share your plugin?  I had a chat with development who are almost certain that you are missing something so they can take a quick look and see how to help.

    I’m not sure I see how Studio (Trados doesn't have this capability) could say something because unless the plugin actually breaks the code there is no action to trigger anything.

    Regards

    Paul

    Paul Filkin | RWS Group

    ________________________
    Design your own training!

    You've done the courses and still need to go a little further, or still not clear? 
    Tell us what you need in our Community Solutions Hub

  • Sure.  The plugin has absolutely nothing other than the template provided by your SDK to visual studio (perhaps that is the problem?), no code at all, with some of the names in the files changed appropriately.  How would you like me to package it, and to whom and how shall I send it.

1 2