Я работаю над проектом, который был построен в Visual Studio 2008, и он отлично работал в Windows XP, Windows 7, 8 и 10.
Но затем мы перешли на Visual Studio 2013 [целевая платформа-3.5, алгоритм подписи-sha256RSA такие же, как и были], и теперь у меня возникла эта проблема
Он отлично работает в Windows 7, но когда я попытался установить его в Windows XP-SP2 с помощью «Щелкнуть после развертывания приложения», я получил следующее исключение.
- Exception reading manifest from file:Desktop/MyApp-vs13/MyApp.application: the manifest may not be valid or the file could not be opened.
- Source: System.Deployment
- Трассировка стека: в System.Deployment.Application.ManifestReader.FromDocument (String localPath, ManifestType manifestType, Uri sourceUri) в System.Deployment.Application.DownloadManager.DownloadDeploymentManifestDirectBypass (SubscriptionStore subStore, Download & SubscriptionStore subStore, SubscriptionStore subStore, UriileFownStation и sourceUrio параметры, информация о сервере и информация о сервере) в System.Deployment.Application.DownloadManager.DownloadDeploymentManifestBypass (SubscriptionStore subStore, Uri и sourceUri, TempFile и tempFile, SubscriptionState и subState, уведомление IDownloadNotification, параметры DownloadOploymentDeployment.ApplicationUplication.ApplicationUserformation.Application.Unformation.ApplicationAptions) , String textualSubId, String deploymentProviderUrlFromExtension, BrowserSettings browserSettings, String & errorPageUrl) в System.Deployment.Application.Appli cationActivator.ActivateDeploymentWorker (состояние объекта) --- Внутреннее исключение --- System.Deployment.Application.InvalidDeploymentException (SignatureValidation)
- Подпись XML манифеста недействительна.
- Источник: System.Deployment
- Трассировка стека: в System.Deployment.Application.Manifest.AssemblyManifest.ValidateSignature (Stream s) в System.Deployment.Application.ManifestReader.FromDocument (String localPath, ManifestType manifestType, Uri sourceUri) --- Внутреннее исключение --- System.Security .Cryptography.CryptographicException
- Не удалось создать SignatureDescription для предоставленного алгоритма подписи.
- Источник: System.Security
- Трассировка стека: в System.Security.Cryptography.Xml.SignedXml.CheckSignedInfo (ключ AsymmetricAlgorithm) в System.Security.Cryptography.Xml.SignedXml.CheckSignature (ключ AsymmetricAlgorithm) в System.Security.CryignedningSymmetricAlgorithm key) в System.Security.CryignedningSymmetricAlgorithm. ) в System.Deployment.Internal.CodeSigning.SignedCmiManifest.Verify (CmiManifestVerifyFlags verifyFlags) в System.Deployment.Application.Manifest.AssemblyManifest.ValidateSignature (Stream s)
Дополнительная информация:
- Алгоритм подписи: sha256RSA
- Целевая база проекта: 3.5
- Целевая платформа проекта: AnyCpu
- клиентская ОС: Windows XP - Service Pack 2
- client .net framework: 3.5 (позже я установил 4.0, но результат такой же)
Я знаю, что здесь есть несколько вопросов, похожих на мой, но общим ответом на все они было «удалить подпись», что для меня не вариант, даже я не могу изменить «алгоритм подписи»
Все, что мне нужно для успешного развертывания и запуска моего проекта в Windows XP SP2 с .NET framework 3.5
Есть ли что-то, чего мне не хватает, или какой-то способ этого добиться?