public static List <string> list(this DotNet_SDK_GacUtil gacUtil, string criteria)
 {
     return(gacUtil.execute("/l {0}".format(criteria))
            .split_onLines()
            .where ((line) => line.regEx("Version.*PublicKey"))
            .toList());;
 }
        public static bool install_In_Gac(this DotNet_SDK_GacUtil gacUtil, string assemblyToInstall)
        {
            "Installing Assembly into GAC: {0}".info(assemblyToInstall);
            var result = gacUtil.execute("/i {0}".format(assemblyToInstall));

            if (result.contains("Assembly successfully added to the cache"))
            {
                "Assembly successfully added to the cache".info();
                return(true);
            }
            result.error();
            return(false);
        }
 public static bool install(this DotNet_SDK_GacUtil gacUtil, string assemblyToInstall)
 {
     return(gacUtil.install_In_Gac(assemblyToInstall));
 }
 public static List <string> withName(this DotNet_SDK_GacUtil gacUtil, string criteria)
 {
     return(gacUtil.list(criteria));
 }
 public static List <string> list(this DotNet_SDK_GacUtil gacUtil)
 {
     return(gacUtil.list(""));
 }
 public static string help(this DotNet_SDK_GacUtil gacUtil)
 {
     return(gacUtil.execute(""));
 }
 public static string execute(this DotNet_SDK_GacUtil gacUtil, string arguments)
 {
     return(gacUtil.exe().startProcess_getConsoleOut(arguments));
 }
 public static bool gacUtil_exe_exists(this DotNet_SDK_GacUtil gacUtil)
 {
     return(gacUtil.exe().fileExists());
 }
 public static string exe(this DotNet_SDK_GacUtil gacUtil)
 {
     return(gacUtil.GacUtil_Exe);
 }
        public static API_IKVM install_IKVM_Assemblies_on_GAC(this API_IKVM ikvm)
        {
        	"Installing IKVM dlls in local GAC folder".info();
        	var gacUtil =  new DotNet_SDK_GacUtil();  
        	foreach(var file in ikvm.IKVMInstallationDir.files("ikvm*.*"))
        		if (file.fileName().neq("ikvm-native.dll") && gacUtil.install(file).isFalse())              		
        		{
        			"Failed to install into GAC, so stopping installation process".error();
        			break;
        		}
			return ikvm;
        }