标签: setup-project

如何创建不需要管理员访问权限的Windows安装程序MSI

我已经创建了一个MSI Windows安装程序,它安装了一个插件,我为我办公室使用的一个软件编写了这个插件.但是,这里的许多用户对他们的计算机没有管理员权限,并且IT部门因为必须为他们安装插件而感到沮丧.

我的安装程序除了将几个文件复制到用户可以访问复制文件的位置之外什么都不做.有没有办法修改我的安装项目,以便生成的MSI不需要管理员权限?

c# windows-installer setup-project visual-studio-2010

11
推荐指数
2
解决办法
5983
查看次数

安装项目和设置向导之间有什么区别?

对于winform应用程序,我必须创建一个安装程序项目,这是我的选择:

在此输入图像描述

安装项目和安装向导之间有什么区别?

setup-project setup-wizard visual-studio-2013

11
推荐指数
2
解决办法
5378
查看次数

Visual Studio 2010中的安装项目:未知发布者?

我创建了一个VS 2008安装项目.我试图在Windows 7计算机上以标准用户身份安装它.我在安装过程中收到有关未知发布者的警告.我使用makecert创建证书,然后将其转换为密码pfx文件.我已经使用pfx文件对msi和setup.exe进行了数字签名.当我进入文件属性时,我可以看到附加的数字证书.在Windows 7计算机上,我将pfx文件导入"受信任的发布者".我需要做些什么才能摆脱警告?我无法安装应用程序所需的管理员用户和密码.我无法更改UAC设置.我需要对证书/设置文件进行更改才能使其正常工作.

deployment installation setup-project visual-studio

10
推荐指数
1
解决办法
5973
查看次数

如何在我的设置项目中嵌入横幅图像和/或添加删除程序图标?

我正在使用visual studio 2010中的一个安装项目来为我正在处理的程序创建一个安装程序.我希望在我的设置中有自定义横幅图像以及添加删除程序中的自定义图标.

我已将这两个图像添加到我的安装程序的"应用程序文件夹"中,并且能够正确显示它们.但是,我的程序不是很大,只能安装为EXE和一些DLL.因此,对于我来说,"安装"的第4和第5个文件是仅在安装期间使用的图形,这似乎有点愚蠢.

有什么方法可以将这些图像嵌入到安装程序或我的其他项目中吗?

.net c# setup-project visual-studio-2010

10
推荐指数
2
解决办法
7019
查看次数

.net安装项目:如何传递多个CustomActionData字段

在.net"安装项目"中,可以在设置向导中添加一个或多个自定义屏幕,其中包含用户可以输入其他安装参数的字段(例如文本框).

然后可以将自定义字段传递给"自定义操作"类库项目,以处理用户字段.下图显示了属性"ServerName"如何映射到EDITB1文本字段:

在此输入图像描述

在Custom Action类中,按如下方式访问属性:

string serverName = Context.Parameters["ServerName"];
Run Code Online (Sandbox Code Playgroud)

问题:如何为自定义操作指定多个属性(对于多个文本框)?

.net c# setup-project

10
推荐指数
1
解决办法
1万
查看次数

如何将COM暴露的.NET项目添加到VB6(或VBA)引用对话框?

我根据Phil Wilson 的特殊文章构建和部署.NET COM程序集创建了一个暴露给COM的.NET程序集.

在.NET程序集正确注册COM的意义上,一切正常,编译的COM代码可以毫无问题地调用它.

唯一奇怪的是,在使用VB 6.0或VBA时,针对暴露于COM的.NET程序集进行开发需要程序员"浏览"到相关.tlb文件的确切文件位置,之后一切正常.也就是说,类库不会直接显示在"引用"对话框中,因此您必须浏览到文件位置.

同样,COM Interop方面确实可以100%工作; 但是,我认为必须有一些设置可以使库直接在VB 6.0和VBA的References对话框中可见.

有谁知道这个设置是什么?或者只是通过注册才能自动发生这种情况?

非常感谢任何建议......

麦克风

编辑/更新

要回答jpoh关于我是否正在使用/ codebase开关的问题,我使用的是.msi安装包,而不是显式使用RegAsm.正确地注册了程序集,可以看出,在HKCR\CLSID {myGUID}\InprocServer32中,'CodeBase'键正确保存了程序集的完整路径.编译的COM组件对这个dll执行就好了,只有在使用VB 6.0或VBA进行开发时它们才会出现在引用对话框中.因此,我需要"浏览"到正确的文件位置,之后它可以100%正常工作.

更新#2

经过进一步研究,似乎虽然类GUID正在正确注册,但我的.tlb文件尚未注册.我不知道为什么不.注册.tlb文件应该为我的类基于HKCR\Interface {myInterfaceGUID}的接口放置一些注册表项,但是这没有发生.奇怪的是,这种缺乏注册似乎并没有影响dll的功能,除了它在VB6和VBA的引用对话框中的可发现性.

安装项目中我的.tlb文件的属性似乎是正确的:'PackageAs'属性设置为'vsdpaDefault','Register'属性设置为'vsdrfCOM'.我很困惑为什么这不会成功安装在目标机器上.

更新#3

好吧,事实证明安装项目没有成功构建......尽管它报告了"构建成功".

实际上有一个构建警告(令人惊讶的是,警告,而不是错误)被报告为"无法为文件名创建注册信息'DotNetLibrary3.tlb'".由于这是一个警告,而不是错误,编译声明"Build Succeeded"并且错误列表没有打开.

对此进行跟踪,当Vista是您的开发机器时,尝试创建安装项目时,这似乎是一个问题,如下所述:

VS2008安装项目中的COM类型库注册问题

这里描述了一些手动修复:

反馈:无法为名为'filename'的文件创建注册信息

我还没有尝试修复,但明天我会报告,如果这解决了.

更新#4

这没有那么好用......似乎运行在该文章中建议的RegCap.exe在Vista上运行时不起作用.由于RegCap实际上是由创建项目本身在创建.msi时运行的,因此这并不奇怪.简而言之,安装项目几乎肯定会失败,因为它调用的RegCap命令失败了...所以直接调用RegCap是没有用的.

最重要的是,尝试在Vista上创建安装程序包时,这只是一个错误.或者,它可能是Visual Studio 2008和Vista的组合,我不确定.尝试完全相同的方法是在Windows XP上运行的Visual Studio 2005上创建一个安装项目绝对没有任何问题.

很有可能在Vista和/或Visual Studio 2008上运行正常,但我无法追踪它.对我来说更有效的是在Windows XP上使用Visual Studio 2005生成COM注册要求,然后将它们导入我的Visual Studio 2008安装项目.这些可以通过regasm导出为.REG文件,使用针对dll的/ regfile开关,并使用RegCap(在W'XP!上运行)对.tlb文件.由于我的COM接口不会改变,我只需要做一次.

希望在Vista上运行时Visual Studio 2008中的这个问题会在某些时候得到纠正,但如果没有,希望这篇文章对于在相同情况下发现自己的其他人有一定的价值......

也可以看看:

如何在VB.NET中安装并在Automation Servers列表中注册的用于Excel的COM Server for Excel?

- 迈克

vb6 deployment vba com-interop setup-project

9
推荐指数
1
解决办法
5163
查看次数

Visual Studio安装项目中的"Checkboxes(A)"和"Checkboxes(B)"对话框之间有什么区别?

在Visual Studio安装和部署项目中,我可以为安装程序设计用户界面.我有一个欢迎屏幕,一个许可证接受对话框,然后是一个安装位置对话框.都好.

我想再包含一个对话框,以确认更改文件关联.我认为这样做的方法是使用一个包含Checkbox的对话框.

我可以右键单击UI节点,然后选择"添加对话框",我得到这个选择:

复选框http://i32.tinypic.com/2hxm16a.jpg

这些复选框对话框之间有什么区别?

我尝试了RTFM,但找不到这些选项的文档.


编辑:等等,我找到了.

替代文字http://i26.tinypic.com/b49m6g.jpg

installation setup-project visual-studio-2008 visual-studio

9
推荐指数
1
解决办法
892
查看次数

如何从Visual Studio Installer项目中删除"欢迎使用安装向导"文本

我有一个Visual Studio安装程序项目,我在Visual Studio 2010中,我无法弄清楚如何从向导的对话框中删除"欢迎使用[产品名称]安装向导"文本.

例如:如何从下面的屏幕截图中删除文本"欢迎使用Setup1安装向导"?

在此输入图像描述

installer setup-project visual-studio-2010

9
推荐指数
3
解决办法
8169
查看次数

是否可以在安装向导项目中注册环境变量?

我正在为我的程序
http://support.microsoft.com/kb/307353创建一个Visual Studio 2008安装向导.我
看到可以添加注册表项等.是否有可能在不写入的情况下注册Windows环境变量自定义动作?
如果我必须写一个自定义动作,那么最痛苦的方法是什么?

setup-project visual-studio

9
推荐指数
1
解决办法
5475
查看次数

Visual Studio设置不卸载以前版本的版本

我需要不断发布一个新的可执行文件,并进行修改以发送给最终用户.设置项目属性设置为

RemovePreviousVersion = True
DetectNewerInstalledVersion = True
Run Code Online (Sandbox Code Playgroud)

当我发布新版本时,我会增加版本并更改产品代码.

(由于我使用的是Visual Studio 2010 - 当您增加版本时,它会自动更改产品代码,但我也尝试手动更改它).

构建完成后 - 以前的版本不会卸载.

设置如下:

在visual studio 2010 ultimate中设置项目属性

编辑:经过一些研究后,我发现项目的fileVersion也需要增加.我在AssemblyInfo.cs中这样做了

[assembly: AssemblyVersion("0.0.0.2")]
[assembly: AssemblyFileVersion("0.0.0.2")]
Run Code Online (Sandbox Code Playgroud)

两个版本都是0.0.0.1.重建后 - 同样的问题.

有关如何使这项工作的任何想法?

setup-project visual-studio-2010

9
推荐指数
1
解决办法
4878
查看次数