In Windows 10 kompilierte Probleme

Ich habe ein Problem beim Erstellen von Apps festgestellt, die C: \ Windows \ System32 \ CertEnroll.dll als Referenz verwenden.

Der folgende Code funktioniert einwandfrei, wenn er mit VS 2015 unter Windows 7 kompiliert und dann auf einem Windows 7-Computer ausgeführt wird.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using CERTENROLLLib;

namespace CertTest
{
    class Program
    {
        static void Main(string[] args)
        {
            try
            {
                CX509PrivateKey key = new CX509PrivateKey();
                key.ContainerName = Guid.NewGuid().ToString();
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }
    }
}

Wenn Sie versuchen, dies in Windows 10 zu kompilieren und es dann auf einem Windows 7-Computer auszuführen, wird der folgende Fehler ausgegeben.

"Das COM-Objekt vom Typ 'System .__ ComObject' konnte nicht in den Schnittstellentyp 'CERTENROLLLib.CX509PrivateKey' umgewandelt werden. Dieser Vorgang ist fehlgeschlagen, weil der Aufruf QueryInterface für die COM-Komponente für die Schnittstelle mit IID '{728AB362-217D-11DA-B2A4-000E7BBBBB2B09 } 'ist aufgrund des folgenden Fehlers fehlgeschlagen: Keine solche Schnittstelle wird unterstützt (Ausnahme von HRESULT: 0x80004002 (E_NOINTERFACE)). "

Ich habe es von mehreren Leuten hier replizieren lassen, und ich möchte weitere Informationen erhalten, bevor ich mich an Microsoft wende.

Ich denke, meine Frage ist: Kann jemand anderes dies bestätigen oder wenn es bestätigt wird, haben sie die Rückwärtskompatibilität gebrochen?

Antworten auf die Frage(6)

Ihre Antwort auf die Frage