我有一个使用Visual Studio 2008开发的应用程序,并通过ClickOnce分发。
我的问题:如果我以John(例如)登录客户端计算机并启动setup.exe(通过ClickOnce提供)来安装应用程序,我注意到可执行文件的路径类似于:C:\ Users \ John \ AppData \ Local \ Apps \ 2.0 .... \ mysoftware.exe
现在,如果我以Mike身份登录,可执行文件的路径如下:C:\ Users \ Mike \ AppData \ Local \ Apps \ 2.0 .... \ mysoftware.exe
似乎每个用户的每个可执行安装都有不同的副本。它是否有意义?在我开发Visual Basic 6应用程序之前,可执行文件位于C:\ Program Files \ MySoftware \ MySoftware.exe中。每个用户都运行相同的可执行文件。
答案 0 :(得分:7)
是的,ClickOnce始终将应用程序安装到用户配置文件中的模糊文件夹中。这是出于安全原因。具有有限权限的用户无法写入“Program Files”文件夹,但他们可以写入其个人资料。
这是每个人最初都被关闭的原因,因为它是不同的。但是,唯一值得关注的问题是,如果您的应用程序规模庞大且用户连接速度很慢。如果你仍然讨厌每个用户安装它的想法,你将不得不使用别的东西; ClickOnce无法以不同的方式运行。
答案 1 :(得分:0)
我同意关于点击一次,特权问题和安全问题的'withwhatknott'。
我想说,请使用'Visual Studio安装程序'内置安装程序。
从解决方案中创建一个新的“Visual Studio安装程序”项目。 这个比click-once更灵活。
检查一下: Visual Studio 2010 setup project: How to set company name used in default install location?
希望它有所帮助。