我知道如何注册dll但是我从来没有真正确定我为什么要这样做,或者在什么条件下必须注册dll.有人可以向我解释或指出一些文件吗?
我开始在家里使用visual studio c ++ express 2008,但其中没有ATL.
如何将ATL添加到visual studio c ++ express 2008?
我想知道是否有任何漂亮而又整洁的工具来替换GNU Autotools或Make来构建一个非常大的C++项目,这是一个非常复杂的事情.
如果项目很小,生成de Autotools所需的所有文件很简单,但如果源代码分为多个目录,多个第三方库和许多依赖项,则属于"Autotools Hell".
谢谢你的任何建议
我想使用新的标准线程而不是boost:threads但我注意到旧的shared_mutex不可用.什么是一个很好的建议来取代这个功能,并给我一个多读者,单作家锁?
我在Visual Studio 2008中有一个Windows服务项目.我还添加了设置和部署项目.不幸的是,当我安装它时,该服务不会显示在服务MMC管理单元中.
我已经将ProjectInstaller添加到服务项目中,我已经按照这里的说明进行操作了.
我无法决定是否要将我的项目设置为基于Web的(如在Web应用程序中),基于桌面的(桌面应用程序)或可以同步或连接到云的桌面应用程序.
我不知道是否有其他人会对这个应用程序感兴趣,而且它只适用于我,所以我倾向于桌面应用程序.如果,由于某种原因,我完成它,释放它,人们真的喜欢它,我可能会看到它也同步到云(想想v2).但是我不确定做出如此彻底的改变是多么困难,而且我不想最终得到一些没用的东西,因为我在开始这个项目之前做出了一个糟糕的选择.
对此有什么指导吗?任何经验法则或最佳做法?任何个人经历?
如果语言很重要,我只是因为我最熟悉它而考虑Java,并且很容易让我与朋友分享它以进行测试,如果我遇到困难并需要其他人的帮助.
我们团队中的某个人安装了StyleCop,从那时起他加载并承诺源代码控制的所有项目都拒绝加载,除非安装了stylecop.
我知道我可以手动编辑.csproj文件来摆脱它,但是有一种简单的方法可以从项目文件中自动删除这些stylecop部件,以便可以在非Stylecop感染的Visual Studio机器上加载和构建它们吗?
我正在尝试从本机C++可执行文件调试C#dll.我有一个C#COM对象,通过IDispatch从本机代码加载和运行.一切都是在Debug中构建的,包括C#和C++代码.虽然我可以看到所有的c ++代码,并且所有的c ++ dll都加载了符号并可用于调试,断点等C#代码拒绝播放.
我所看到的是C#dll都拒绝加载它们的符号pdbs,在模块窗口中报告"跳过ngen binary的加载符号".
顺便说一句,我在这里调试C#解决方案,我已经在COM项目的调试设置中将本机可执行文件设置为"启动外部程序".
现在我可以启动C++可执行文件然后附加到它,然后所有工作都按照我的预期 - 符号加载,我可以在C#中设置断点.
这是使用Visual Studio 2013u4.是否有启用混合模式调试的设置?一个问题是本机代码是使用VS2010构建的.
这是模块窗口 - 注意所有pdbs和dll都在一个目录中,你可以看到加载了c ++ dll,但没有加载C#.
这是模块窗口 - 注意EvCom dll(COM对象)的第3个条目,我假设它是启用调试的条目.
在输出窗口中没有任何兴趣,当加载COM dll时,我看到以下内容(在连接到运行进程的情况下,另一个只有2个Loaded行而不是3个).
'Explorer.exe' (Win32): Loaded 'C:\Dev\...\lib\debug\EvCom.dll'.
'Explorer.exe' (Win32): Loaded 'C:\Dev\...\lib\debug\EvCom.dll'.
'Explorer.exe' (Win32): Unloaded 'C:\...\lib\debug\EvCom.dll'
'Explorer.exe' (Win32): Loaded 'C:\Dev\...\lib\debug\EvCom.dll'.
Run Code Online (Sandbox Code Playgroud)
有一点感兴趣 - 我在调试设置中检查了"使用托管兼容模式",并且在开始调试时仍然没有加载我的符号,它只在模块列表中显示1个条目.这次为C#dlls说"符号文件中没有原生符号".
看起来问题是无法在VS2013(或2012)中选择调试器类型.这篇连接文章通过一些解决方法建议其"按设计".