| #if UNITY_EDITOR | 
| using UnityEditor; | 
| using UnityEngine; | 
| using System; | 
| [System.Reflection.Obfuscation(Exclude = true)] | 
| public class ILRuntimeCrossBinding : EditorWindow | 
| { | 
|     [MenuItem("ILRuntime/生成跨域继承适配器")] | 
|     public static void ShowWindow() | 
|     { | 
|         EditorWindow.GetWindow<ILRuntimeCrossBinding>("生成跨域继承适配器").Show(); | 
|     } | 
|   | 
|     Type type = typeof(IConfigPostProcess); | 
|   | 
|     private void OnGUI() | 
|     { | 
|         EditorGUILayout.Space(); | 
|         EditorGUILayout.Space(); | 
|         EditorGUILayout.Space(); | 
|         EditorGUILayout.Space(); | 
|         GUILayout.Label(string.Format("类名:{0}", type.Name)); | 
|         EditorGUILayout.Space(); | 
|   | 
|         if (GUILayout.Button("生成")) | 
|         { | 
|             GenerateCrossbindAdapter(); | 
|         } | 
|     } | 
|   | 
|     void GenerateCrossbindAdapter() | 
|     { | 
|         var path = "Assets/ILRuntime/Src/Inheritance/{0}Adapter.cs"; | 
|         using (System.IO.StreamWriter sw = new System.IO.StreamWriter(string.Format(path, type.Name))) | 
|         { | 
|             sw.WriteLine(ILRuntime.Runtime.Enviorment.CrossBindingCodeGenerator.GenerateCrossBindingAdapterCode(type, "ILCrossBinding")); | 
|         } | 
|         AssetDatabase.Refresh(); | 
|         DebugEx.Log("跨域继承适配生成成功"); | 
|     } | 
| } | 
| #endif |