⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.cs

📁 c#源代码
💻 CS
字号:
//	GacUtil2
//	Copyright (c) 2004, Christoph Wille
//	All rights reserved.
//	
//	Redistribution and use in source and binary forms, with or without modification, are 
//	permitted provided that the following conditions are met:
//	
//	- Redistributions of source code must retain the above copyright notice, this list 
//	  of conditions and the following disclaimer.
//	
//	- Redistributions in binary form must reproduce the above copyright notice, this list
//	  of conditions and the following disclaimer in the documentation and/or other materials 
//	  provided with the distribution.
//	
//	- Neither the name of the <ORGANIZATION> nor the names of its contributors may be used to 
//	  endorse or promote products derived from this software without specific prior written 
//	  permission.
//	
//	THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS &AS IS& AND ANY EXPRESS 
//	OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY 
//	AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 
//	CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
//	DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
//	DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER 
//	IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT 
//	OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

using System;
using System.Text;
using RJH.CommandLineHelper;  // http://www.codeproject.com/csharp/commandlineparser.asp

namespace GacUtil2
{
	public class GacUtil2Switches
	{
	    private string _Install = "";
		private string _Remove = "";
		private bool _ShowHelp = false;
	
	    [CommandLineSwitch("i","/i <assembly name>")]
	    public string Install
	    {
	        get { return _Install; }
	        set { _Install = value; }
	    }
	    
	    
	    [CommandLineSwitch("u","/u <assembly name>")]
	    public string Remove
	    {
	        get { return _Remove; }
	        set { _Remove = value; }
	    }
	    
	    [CommandLineSwitch("?","/?")]
	    public bool ShowHelp
	    {
	        get { return _ShowHelp; }
	        set { _ShowHelp = value; }
	    }
	    
	    public void PrintHelp()
	    {
	    	StringBuilder stb = new StringBuilder();
	    	stb.Append(Environment.NewLine);
	    	
	    	// TODO: implement the help text for this application
	    }
	}
	
	class MainClass
	{
		// NOTE: Only switches /i and /u are supported
		public static void Main(string[] args)
		{
			GacUtil2Switches switches = new GacUtil2Switches();
			Parser parser = new Parser( System.Environment.CommandLine, switches);
        	parser.Parse();
			
			if (switches.ShowHelp)
			{
				switches.PrintHelp();
				return;
			}
			
			if (switches.Install != "")
			{
				try
				{
					AssemblyCache.Install(switches.Install);
					Console.WriteLine("Assembly installed successfully");
				}
				catch(Exception e)
				{
					Console.WriteLine("Error during install: " + e.Message);
				}
			}
			else if (switches.Remove != "")
			{
				try
				{
					AssemblyCache.Uninstall(switches.Remove);
					Console.WriteLine("Assembly removed successfully");
				}
				catch(Exception e)
				{
					Console.WriteLine("Error during removal of assembly from GAC: " + e.Message);
				}			
			}
			else
			{
				Console.WriteLine("No valid parameters specified");
			}	
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -