首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Vista中将多个程序集注册到GAC

在Vista中将多个程序集注册到GAC,需要使用gacutil工具。gacutil是一个命令行工具,可以帮助开发人员将程序集安装到全局程序集缓存(GAC)中。以下是在Vista中使用gacutil将多个程序集注册到GAC的步骤:

  1. 首先,确保已经安装了.NET Framework SDK,因为gacutil工具包含在该SDK中。如果没有安装,可以从Microsoft官方网站下载并安装。
  2. 打开命令提示符(cmd.exe),并切换到gacutil工具所在的目录。通常情况下,该工具位于以下目录中:
代码语言:txt
复制
C:\Program Files\Microsoft SDKs\Windows<version>\bin\<.NET version>\

其中,<version>是SDK的版本号,例如v7.0A,<.NET version>是.NET Framework的版本号,例如v4.0.30319。

  1. 使用以下命令将程序集安装到GAC中:
代码语言:txt
复制
gacutil -i<assembly path>

其中,<assembly path>是程序集文件的路径。例如:

代码语言:txt
复制
gacutil -i "C:\MyAssemblies\MyAssembly.dll"
  1. 如果需要将多个程序集安装到GAC中,可以使用通配符。例如,以下命令将当前目录下所有的.dll文件安装到GAC中:
代码语言:txt
复制
gacutil -i *.dll
  1. 如果需要将程序集安装到特定的GAC中,可以使用-gacdir参数指定GAC的路径。例如,以下命令将程序集安装到特定的GAC中:
代码语言:txt
复制
gacutil -i<assembly path> -gacdir <GAC path>

其中,<GAC path>是GAC的路径。

注意:在Vista中,需要以管理员身份运行命令提示符才能使用gacutil工具。

总结:在Vista中将多个程序集注册到GAC,需要使用gacutil工具,并确保以管理员身份运行命令提示符。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

WiX安装选项--注册程序GAC和VS的设计时环境

Visual Studio的设计时引用组件的窗口中看到的程序的位置和程序的运行时位置是不一样的,特别是全局程序缓存(GAC)中的程序,通过WiX制作Winodws安装程序的时候需要处理这个区别...VS的设计时的添加引用窗口看到的程序的位置来自注册表SOFTWARE\Microsoft\.NETFramework\AssemblyFolders – 放在HKEY_LOCAL_MACHINE 下面就是针对所有的用户...WiX要把一个程序注册GAC,只需要在File 上增加一个选项 Assembly=".net" 就可以了,但是注册GAC的dll不会放到安装目录下方了,这就需要通过提供两个Component方式来处理...INSTALLLOCATION" /> 上面的例子的GACTest.dll注册了两个...Component--RTGACTest和DTGACTest,RTGACTest下的File增加了属性Assembly=".net",DTGACTest则没有增加,同时DTGATest增加了一个注册表项目

64660

.NET 5的重大改变:消失的历史技术

全局程序缓存 全局程序缓存(GAC)背后的理论是,所有.NET 库都可以存储单个集中的位置。在这种方式下,它与 COM 库类似。但与 COM 不同的是,它可以存储每个库的多个版本。...此外,获得代码签名证书的需要以及 Windows Vista 带来的安全性的增加使得 GAC 成为一项令人讨厌的技术。.NET 4.5 发布时,几乎没有应用程序GAC 用于非微软库。...它们所做的事情不多,例如,指示程序是否 GAC 中的属性被硬编码为返回 false。 为了进一步明确意图,所有的 GAC API 现在都被标记为已过时,微软正考虑未来的版本中删除它们。....NET Framework 时代,多个应用程序会托管单个 Internet Information Server(IIS)实例中。...理论上,每个应用程序都将被隔离一个单独的应用程序域中,但要打破这种隔离并干扰 IIS 中运行的其他应用程序并不难。 代码访问安全的创建就是为了限制这种可能的损害。

41420

关于强命名程序

b) 全局方式 全局部署方式将程序集部署一些 CLR 已确知的地方,当 CLR 搜索程序时,它会知道这些地方去找。...如何部署强命名程序( Strong Name Assembly )和 GAC    a)GAC 的概念 如果一个 Assembly 要被多个应用程序访问,那么他就必须放在一个...GAC    GAC 包含很多子目录,这些子目录是用一种算法来产生的,我们最好不要手动将程序拷贝 GAC 中,相反,我们应使用工具来完成这样的工作。... GAC注册程序跟 COM 注册差不多,但相对更容易:    1 .把程序添加到 GAC 中:  GACUtil /i sample.dll  (参数 /i 是安装的意思...首先, GAC 使得很多程序可以共享程序,这从整体上减少了使用的物理内存;其次,我们很容易将一个新版的程序集部署  GAC 中,并通过一种发布者策略(差不多就是一种重定向方法,比如将原来引用版本为

62210

WCF集成COM+应用程序遇到的问题

注册成COM+组件组件管理器:Regsvcs命令 Regsvcs COMPlusTest.dll,界面如下: ? Ok,打开组件管理器:运行输入命令:dcomcnfg打开 ?...反复试了好多次,卸载了重新安装都只是组件管理器中成功的注册,但都不能用SvcConfigEditro.exe工具把新添加的COM+应用程序集成。...其实不是这样的,命令行下查看,你会发现它实际上包含很多子目录,子目录的名字和程序的名称是相同的,但他们都不是实际的程序,实际的程序位于程序名对应的目录下。...因为GAC包含很多子目录,这些子目录是用一种算法来产生的,我们最好不要手动将程序拷贝GAC中,相反,我们应使用工具来完成这样的工作。因为这些工具知道GAC的内部结构。...它一般情况下遵循下面的原则: 1.如果程序有强名称,首先在全局程序缓(GAC)中查找程序----->GAC(应该是先找平台相关的,例如:GAC_32,GAC_64,然后找去找GAC_MSIL)。

64410

DevExpress 开发经验总结3 制作项目安装包

由于其特殊性,打包的时候不能简单的将其拷贝安装包目录下,需要将它们注册Global Assembly Cach(全局程序缓存),电脑的系统盘如:C:\Windows\assembly\看到目前计算机上安装的...注册DLLGAC有两种办法:一种是把DLL拖入windows/assembly目录下(不是复制粘贴,是拖动);另外一种是使用gacutil.exe工具。...这样设置是:当安装程序运行完成后(已经注册了DevExpress的相关DLL),SetUpFactory工具会自动删除这些DLL,客户端的安装目录中就不会存在这些DLL,目录相对干净,程序运行时会依赖...制作完成后,将安装包拷贝其他电脑上安装测试。 点击“下一步”,…………,最后出现“注册Assembly屏幕” ? 点击“下一步”按钮,开始执行脚本文件,注册DLL ? 注册成功。 ?...而上图中程序运行正常,说明程序依赖的DevExpress的相关DLLGAC中。 ? 本篇完。

1.4K30

.NET面试题系列 - .NET框架基础知识(2)

程序是可配置的:可以将其配置私有或共享(全局程序缓存,GAC)中。...不同程序集中相同名字的命名空间是不同的两个对象。程序和命名空间的主要区别: 程序是部署,重用应用程序的最小单位,但命名空间不是,它更多的是将具有相似内容的一组类型和方法组织一起。...GAC是一个机器级别的程序,其中包括mscorlib.dll等至关重要的程序Add Reference中,它不会被自动包括进来,必须手动浏览才可以找到部署GAC中的程序。...如果你打算将类库部署GAC,一般来说,这个库应当被大量其他工程引用。 不能把可执行的程序集部署GAC。...部署GAC的细节,参阅精通C#第14章以及https://msdn.microsoft.com/zh-cn/library/yf1d93sz.aspx。全局程序缓存中部署的程序必须具有强名称。

1.2K20

【翻译】没有安装ASP.NET MVC3的服务器上运行ASP.NET MVC3的程序-scottgu

方法1:基于GAC引用ASP.NET MVC组件 当您在计算机上安装ASP.NET MVC 3的时候, 一些组件会自动注册GAC中(全局程序缓存)。...GAC提供一个集中的地方供安装和升级(通过Windows更新).NET程序。 因此ASP.NET MVC3项目默认在这里引用程序。...: 上述错误表示, 至少有一个运行ASP.NET MVC 3所需的程序GAC中找不到。...相反,你只要复制你的web应用程序bin目录中包含MVC3的组件) .NET4服务器上,它就会运行。...无需托管服务提供商另外注册/安装/操作需要。 使您的Web项目包含ASP.NET MVC3程序“bin部署”是非常简单的, 只需2分钟左右。

4.2K10

Windows 7社区发布活动 -- Windows 7兼容性概述

今天深圳的Windows 7社区发布活动讲了Session 2 -- Windows 7兼容性概述。今天参会的人员达到60多个,大家也非常积极的讨论。...我的PPT下载Win7应用开发兼容性.zip 下面简要介绍一下今天的内容:微软的操作系统更新换代仍然按照自己的步伐,从XP2003、vista再到现在的Windows7,基本是同期2个版本过渡4年,后一个基本是前一个升级版...2、文件与注册表虚拟化技术:Vista系统采用了文件与注册表虚拟化技术,它可以使某些旧版 Windows中必须要求管理员权限的应用程序以非管理员的权限运行(为每个用户帐户分别建立一套应用程序所需的文件与注册表副本...然而并非所有的应用程序都可以完美地支持 Windows Vista 的文件与注册表虚拟化技术,所以实际应用中可能会遇到各种各样问题,主要有: 2.1、某些应用程序可以以文件与注册表虚拟化方式运行,但需要重新定位通过此应用程序生成的文件...假设某图像编辑程序可以以文件与注册表虚拟化方式运行,在这个程序中将新图像文件保存至 %ProgramFiles%、%SystemRoot% 等位置后,通过资源管理器却无法在这些位置找到刚生成的文件。

1.7K60

未能加载文件或程序 Microsoft.ReportViewer.Common, Version=11.0.0.0

System.IO.FileNotFoundException: 未能加载文件或程序“Microsoft.ReportViewer.Common, Version=11.0.0.0, Culture=...89845dcd8080cc91” 报错堆栈,意思是:客户端缺少了 Microsoft.ReportViewer.Common 文件, 然后我搜索整个计算机找到对应的dll文件后,还是报错,上网搜了好久, 缺少哪些文件或程序...,程序开发计算机下找到对应的烤客户端的程序启动目录下即可(项目烤Bin\\Debug目录下) 只能用命令的方式烤: 11.0.0.0 是版本号,89845dcd8080cc91 你打开 C:\...WINDOWS\assembly\  看一下就知道什么意思了 copy C:\WINDOWS\assembly\GAC_MSIL\Microsoft.ReportViewer.Design.resources...zh-CHS_89845dcd8080cc91\Microsoft.ReportViewer.WebForms.resources.dll C:\ copy C:\WINDOWS\assembly\GAC_MSIL

1.5K60

《CLR via C#》Part1之Chapter3 共享程序和强命名程序(二)

CLR支持两种程序:弱命名程序(weakly named assembly)和强命名程序(strongly named assembly). ?...由于弱类型程序总是私有部署的,所以当CLR应用程序的基目录或者子目录中搜索程序的文件时,只会使用程序的名称(添加一个.dll或者.exe)。...强类型程序则是由一个文件名、一个版本号和一个语言文化(culture),除此之外,强命名程序还使用发布者的私钥进行了签名。...全局程序缓存 如果一个 程序要由多个应用程序访问,必须把它放在一个已知的目录中,而且CLR检测到对该程序的一个引用时,必须知道自动检查该目录,这个已知的位置称为全局程序缓存(Global...Assembly Cathe,GAC),对于.NetFramework 3.5和以前的版本,GAC通常放在以下目录,C:Windows\Assembly,而对于.Net4.0,GAC位于C:Windows

47020

Oracle:ODP.NET Managed 小试牛刀

ODP.NET Managed”发布已经有一段时间了,近期正好有一个新项目,想尝试用一下,参考园子里的文章:《.NET Oracle Developer的福音——ODP.NET Managed正式推出》 Oracle...至于manged/x64、managed/x86这二个目录,是用来向.NET x86或.NET x64的GAC注册程序的,运行相关的configure.bat后,会自动将common中的Oracle.ManagedDataAccess.dll...放入GAC,这样vs中添加引用时,能自动找到GAC中的相关命名空间 ?...运行了configure.bat的机器上,应用程序的bin目录下不必包括Oracle.ManagedDataAccess.dll,就能正常运行了。...注:configure.bat这一步是可选的,添加引用时,完全也可以通过直接浏览Oracle.ManagedDataAccess.dll所在位置,将该dll复制bin目录下.

80860

解决T4模板的程序引用的五种方案

目录 一、添加程序引用解决不了问题 二、将引用程序集安装到GAC 三、利用VS的PublicAssemblies目录 四、指定程序的具体路径...二、将引用程序集安装到GAC 其实我们有很多方式来解决这个问题,你首先想到的肯定是将引用的程序集安装到GAC中。没错,这是一种解决方案,如果被引用的程序具有强签名的话。...有一点需要注意的是,T4模板引用某个安装于GAC程序的时候,指令下不能指定文件扩展名(.dll)。T4模板应该按照如下的方式定义。...如果将Artech.T4AssemblyRefResovle.Foo.dll拷贝该目录下,你T4模板的指令下就可以直接指定程序名称(不包括扩展名)或者程序文件名(包括扩展名...如果被引用的程序被没有被签名,GAC的方式则不能使用,在这种情况下你需要指定程序文件所在的位置,最直接的当然就是指定程序文件的绝对路径。

79970

如何确定恶意软件是否自己的电脑中执行过?

很不幸,你自己的电脑里发现了一个恶意的可执行程序!那么问题来了:这个文件到底有没有执行过?...在这篇文章中,我们会将注意力放在Windows操作系统的静态取证分析之上,并跟大家讨论一些能够帮助你回答上面那个问题的方法以及证据源,其中涉及的四大主要的证据源包括Windows Prefetch、注册表...因为如果要确定一个文件是否执行过,我们只需要检查几个重要的注册表键即可: 1. ShimCache 微软使用了ShimCache或“AppCompatCache”来识别应用程序的兼容性问题。...,EventID为4688: 更新版本的Windows中,审计功能所能记录的信息将更加精确化,并且微软从Windows Server 2008 R2以及Windows 7中将这个功能整合到了Group...计划任务的信息会被记录在一个名叫”SchedLgU.txt”的日志文件中: Windows Vista+平台中,计划任务的执行信息还会记录在”Microsoft-Windows-TaskScheduler

1.2K50

C# .NET面试系列八:ADO.NET、XML、HTTP、AJAX、WebService(二)

适用于需要多个应用程序共享相同代码的情况,通过将共享程序集安装到 GAC,可以提供代码的重用和版本控制。...共享程序是可以供多个应用程序共享使用的,通常位于全局程序缓存(GAC)中,需要具有强名称。共享程序适用于需要代码重用和版本控制的情况,而私有程序适用于独立部署的应用程序。56....GAC 解决了以下问题:1、程序版本冲突当多个应用程序依赖于相同的程序,但这些应用程序使用不同的版本时,可能会导致版本冲突。...这有助于避免将相同的程序复制多个应用程序的目录中,从而节省磁盘空间,并确保程序的唯一性和一致性。... GAC 中存储程序的过程通常是由程序的开发人员或安装程序执行的。

14410
领券