ClickOnce:在用户的机器上获取MSVCRT C ++ DLL [英] ClickOnce: getting MSVCRT C++ DLLs on user's machine

查看:201
本文介绍了ClickOnce:在用户的机器上获取MSVCRT C ++ DLL的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我一直在拼命地使用ClickOnce来部署我的应用程序(15 C#dll和C ++ / CLI dll与C ++ Runtime DLL依赖关系)。我通过只是复制Release文件夹,但ClickOnce拒绝复制文件(msvcm80.dll,msvcp80.dll和msvcr80.dll)并将其部署在此文件夹中。



我做了这个坚果的解决方法(提供msvcm80.dll,msvcp80.dll和msvcr80.dll作为内容/复制如果较新,然后在启动时,创建Microsoft.VC80.CRT文件夹,复制这些DLL,并创建Microsoft.VC80.CRT.manifest),似乎工作,但这一切只是觉得我错了。



我是否缺少某些东西?

解决方案

我很愚蠢:我刚刚发现:



在我的启动项目的属性页面的发布选项卡上:单击先决条件...按钮>检查Visual C ++运行时库,单选按钮设置:从组件供应商的网站下载先决条件。



似乎可以预期的方式工作!


I've been trying desperately to get my application (15 C# dlls and 1 C++/CLI dll with C++ Runtime DLL dependencies) to deploy with ClickOnce. I got it to work by just copying the Release folder, but ClickOnce refuses to copy the files (msvcm80.dll, msvcp80.dll and msvcr80.dll) and deploy them in this folder.

I did this nutty workaround (supply msvcm80.dll, msvcp80.dll and msvcr80.dll as Content/Copy If Newer and then at startup, create the Microsoft.VC80.CRT folder, copy those DLLs, and create Microsoft.VC80.CRT.manifest) that seems to work, but this all just feels wrong to me.

Am I missing something?

解决方案

I'm stupid: I just found this:

On Publish tab of Properties page of my startup project: click Prerequisites... button > check Visual C++ Runtime Libraries, radio button setting: Download prerequisites from the component vendor's web site.

It seems to work the way one might expect!

这篇关于ClickOnce:在用户的机器上获取MSVCRT C ++ DLL的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆