做完windows update以後,原本可以run的程式通通出現Exception : 錯誤的 IL 格式。

找了一些solution ,嘗試了幾個方法幾乎都無解

不過下面這兩個方法可以試試看

1. run下面這段code 測試是否有問題
namespace TestGenericBug
{
    [TestFixture]
    public interface MyInterface
    { }
    public class C1<I> : MyInterface where I : MyInterface
    { }
    public partial class Factory<T> where T : class
    {
        public T Create<T>(params object[] args)
        where T : class
        {
            return null;
        }
    }
    public partial class Factory2
    {
        public T Create<T>(params object[] args)
        where T : class
        {
            return null;
        }
    }
  
    public abstract class TestGenericPartialMockBase<I, C>
        where I : MyInterface
        where C : C1<I>
    // where C : C1<MyInterface>
    {
        public static void Setup()
        {
            Factory<C> factory = new Factory<C>();
            object good = factory.Create<C>();
            Factory2 factory2 = new Factory2();
            object bad = factory2.Create<C>();
        }
    }
  
    internal class Program
    {
        [Test]
        public static void Main(string[] args)
        {
            TestGenericPartialMockBase<MyInterface, C1<MyInterface>>.Setup();
        }
    }
}

2.直接移除kb928365這個update

我是直接移除kb928365,所有的c# code都恢復正常


arrow
arrow
    全站熱搜
    創作者介紹
    創作者 cutepipico 的頭像
    cutepipico

    cutepipico

    cutepipico 發表在 痞客邦 留言(0) 人氣()