Check for updated version at launch
During the checkSetup() call in initialize of the extension, we can compare the file versions of the runtime plugin, and update it if needed from the extensions path. This way the extension can update the plugin in the MyAssemblies folder and the WebTestRecorderPlugin at the same time to automatically keep them updated with the installed version of the extension, if they are not the same. This would automatically solve the problem with multiple installs of VS as well. Maybe we should then use a common folder for the MyAssemblies, instead of under the VS version folders in Documents.
-
If we never downgrade the dll, this could solve the problem when several versions of VS are installed, as long as the runtime dll Always is backwards compatible. Each VS will then Always load the latest version in the MyAssemblies folder. This however implies we should put the MyAssemblies folder outside the VS version specific folders. Like directly under Documents.
-
We should change approuch entirely. The runtime dll should Always we copied into the solution, into a WebServicePlugin directory. This can be done automatically if one of the Add Extraction Rule or Add Validation Rule functions are used by the user (which then would require the runtime plugin to be present and loaded). This check could then also update the runtime dll in the solution if needed. If the user needs access to these manually, the runtime dll could be added from the menu by the user. This way, the dll never has to be in a public assemblies folder on the machine, and the solution will Always run wherever it is checked out. During Initialize() we could instead check if the solution contains the dll, present a warning if its not there with an option to copy it into the solution, and we could if it needs to be updated ask the user if we should update the dll in the solution. With this, we can also remove the recorder plugin entirely, since it's only purpose is to add the runtime dll to the Project.
-
-
Please register or sign in to post a comment