Hi everyone
We have switched from Studio 2019 to Studio 2021 a while back and have since had trouble with our program that automatically converts WorldServer packages (.wszx) to regular Studio packages (.sdlppx). The package is then further processed into a Studio project (via ProjectPackageImport). We know that the converter and WorldServer support are no longer integrated in Studio itself but have been moved to a plugin, which we also have installed and everything works fine if we import the WS packages by hand.
In our code, we removed the old WS DLL file and imported the one that we think is the new one from the plugin (Sdl.TranslationStudio.Packaging.WorldServer.dll). There seems to be a method/sub integrated in the new DLL with the same name as in the old WS DLL, however, it doesn’t work. And the DLL is also not active in the imports section. When running the program, it always throws an error (NullReferenceException: object reference not set to an instance of an object) and – obviously – doesn’t convert anything. We have also tried a few other methods/subs that looked promising but nothing worked so far, it always throws the same error.
Is there a way to “call” the plugin and/or the functions within and just convert the WS package to a regular Studio package as was the case for Studio 2019? If so, how would that work? If not, is there a workaround for this, such as a way to programmatically walk through the “Open WorldServer Package” dialog?
Code snippets (Code is originally in VB)
Import (some of the imports are greyed out, not just the one with the comment)
Imports Sdl.Desktop.IntegrationApi Imports Sdl.TranslationStudio.Packaging.WorldServer // this is greyed out Imports Sdl.MultiTerm.Client.Connectors Imports Sdl.ProjectAutomation.FileBased Imports Sdl.ProjectAutomation.Core Imports Sdl.ProjectApi Imports Sdl.Core.Settings Imports Sdl.ProjectAutomation.Settings Imports Sdl.LanguagePlatform.TranslationMemoryApi Imports Sdl.Core.Globalization
Code where the conversion should happen
If Not IO.File.Exists(SDLPPX) Then Dim XX As New Sdl.TranslationStudio.Packaging.Convertors.WorldServer.WsPackageConvertor XX.ConvertPackage(WSXZ, SDLPPX) XX = Nothing End If
I’m happy to provide more information if necessary.
Thank you in advance for any hints or tips regarding this topic.
Caroline