Search code examples
c#visual-studio-2017vsix

The file is not a valid VSIX package


After installing Visual Studio 2017, I was able to work on this Vs package for a month or so until the first update. Now after I rebuild this Visual Studio package, and then try to install the VSIX, I get a message saying that it is an "invalid VSIX package".

Any help or pointers would be appreciated...

enter image description here

EDIT:

The log shows this:

Unable to find an entry point named '?' in DLL 'PkgdefMgmt.dll'

19/03/2017 10:16:02 PM - Microsoft VSIX Installer 19/03/2017 10:16:02 PM - ------------------------------------------- 19/03/2017 10:16:02 PM - vsixinstaller.exe version: 19/03/2017 10:16:02 PM - 15.0.26228.9 built by: D15RTWSVC 19/03/2017 10:16:02 PM - ------------------------------------------- 19/03/2017 10:16:02 PM - Command line parameters: 19/03/2017 10:16:02 PM - C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\VSIXInstaller.exe,C:\Service\BSToolsProject_3\Tools\ProductivityTools\Bin (Scenario Engine)\Capitec.ScenarioEngineExtension.vsix 19/03/2017 10:16:02 PM - ------------------------------------------- 19/03/2017 10:16:02 PM - Microsoft VSIX Installer 19/03/2017 10:16:02 PM - ------------------------------------------- 19/03/2017 10:16:02 PM - Failed to initialize settings for Isolated Shell C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\ManagementStudio\ssms.exe: Unable to find an entry point named '?' in DLL 'PkgdefMgmt.dll'. 19/03/2017 10:16:02 PM - Failed to initialize settings for Isolated Shell C:\Program Files (x86)\Microsoft SQL Server\120\Tools\Binn\ManagementStudio\ssms.exe: Unable to find an entry point named '?' in DLL 'PkgdefMgmt.dll'. 19/03/2017 10:16:02 PM - Initializing Install... 19/03/2017 10:16:02 PM - Microsoft.VisualStudio.ExtensionManager.InvalidExtensionPackageException: The file is not a valid VSIX package. at Microsoft.VisualStudio.ExtensionManager.InstallableExtensionImpl.ReadVSIXManifestFromPackage(Stream stream, CultureInfo preferredCulture) at Microsoft.VisualStudio.ExtensionManager.InstallableExtensionImpl..ctor(String path, CultureInfo preferredCulture) at Microsoft.VisualStudio.ExtensionManager.ExtensionEngineImpl.CreateInstallableExtension(String extensionPath, CultureInfo preferredCulture) at Microsoft.VisualStudio.ExtensionManager.ExtensionEngineImpl.CreateInstallableExtension(String extensionPath) at VSIXInstaller.App.GetInstallableData(String vsixPath, Boolean isRepairSupported, IEnumerable1& skuData) at VSIXInstaller.App.Initialize(Boolean isRepairSupported) at VSIXInstaller.App.Initialize() at System.Threading.Tasks.Task1.InnerInvoke() at System.Threading.Tasks.Task.Execute()


Solution

  • Check that the VSIX file contains the required files that make it VSIX v3 file:

    extension.vsixmanifest manifest.json catalog.json

    And that the extension.vsixmanifest file contains a prerequisites section

    https://learn.microsoft.com/en-us/visualstudio/extensibility/how-to-migrate-extensibility-projects-to-visual-studio-2017