visual studio
文章平均质量分 56
与vs相关的内容
zeeq_
A WHU LIESMARSer
展开
-
查看dll或exe文件的依赖项——使用vs自带的dumpbin工具
在使用vs写程序的时候,我们经常会将程序生成为dll或是exe文件,而这些文件通常也会需要依赖其他库的dll才能单独使用。那我们该如何确定某个dll或是exe文件依赖了哪些dll呢?这个问题可以通过使用vs自带的dumpbin工具来解决。下面详细介绍其使用方法:首先点击开始菜单,打开vs命令行程序,如下图所示。在打开的界面上输入dumpbin /dependents +dll/exe文件路径,比如dumpbin /dependents E:\xxx\xxx\plugins\qPDALIO.dl原创 2021-07-11 11:03:29 · 9876 阅读 · 2 评论 -
string转LPCWSTR代码及在vs工程中使用c++调用ShellExecute函数执行外部exe程序代码
string转LPCWSTR代码如下:LPCWSTR ccGenerateReportWorker::string2LPCWSTR(std::string stdstr){ size_t strsize = stdstr.length() + 1; size_t convertedChars = 0; wchar_t *wcstring = (wchar_t *)malloc(sizeof(wchar_t)*(stdstr.length() - 1)); mbstowcs_s(&co原创 2021-05-10 11:13:48 · 381 阅读 · 0 评论 -
c++获取vs工程工作路径的代码
添加头文件#include <direct.h>获取当前路径的代码//获取当前工作路径char buffer[MAX_PATH];getcwd(buffer, MAX_PATH);string curpath = buffer;比如该vs工程的路径为E:\Users\Desktop\windowsproj,运行模式为release,则上述curpath的值为E:\\Users\\Desktop\\windowsproj\\msvc\\x64\\Release如果要获取工程路径原创 2021-05-09 23:05:46 · 1456 阅读 · 0 评论 -
将cloudcompare插件移动到自己管理的cc工程下需要修改的地方
插件编写教程可以参考这里。但是通过直接修改编写的插件是需要使用cmake进行管理的,而由于cloudcompare源码并不算多,如果我们不想用cmake来管理工程,想直接用vs来管理。那么,插件也需要进行转移,其中需要注意和修改的地方包括:在总的解决方案里面添加一个新建项目,类型为Qt Empty Application,命名与原插件名称保持一致(这样可以减少一些命名方面的更改,更不易出错),如下图所示。直接将插件源码移动到总工程文件夹下是不太可行的,因为自己管理的插件类是Qt类型的。将原插件相原创 2021-04-11 17:37:39 · 327 阅读 · 0 评论 -
vs中c++项目的包含目录和库目录配置的两种方式,及无法解析外部符号的解决办法
vs中的c++工程配置中,包含目录和库目录可以在两个地方进行设置,两者效果是一样的。所以有时在转移工程的时候,如果发现在原工程里可以正常运行,而现工程却不行,就可以检查一下附加目录中是否正确进行了设置。VC++目录 - 包含目录 = C/C++ - 常规 - 附加包含目录VC++目录 - 库目录 = 链接器 - 常规 - 附加库目录 此外,当一个解决方案中包含多个工程,且工程直接存在相互引用时,那么,如果出现了无法解析的外部符号这个错误时,通常考虑的问题及解决参考这篇博客。此外,还应原创 2021-04-11 11:54:08 · 8664 阅读 · 3 评论 -
使用vs生成cmake编译好的工程时报错:无法启动程序......拒绝访问。解决方案(以编译cloudcompare为例)
有时因为visual studio设置的原因,在用vs运行cmake生成的cloudcompare工程sln文件的时候,会遇到报错: 原因是项目配置没有设置好。在vs界面中,选中一个解决方案,比如ALL_BUILD,然后选择生成->批生成,如下图所示: 在弹出的界面中把ALL_BUILD项目对应的release和debug生成框勾上,确认后再返回主界面右键项目进行生成的时候,就不会再报错了。如下图所示: 当然,后面还会需要对其他项目进行生成的话,也可能会出现拒绝访问的情况。解决方原创 2021-03-27 19:31:46 · 4122 阅读 · 1 评论 -
vs程序release和debug模式相互切换需要修改的内容
visual studio有两种模式,一种是release,一种是debug。release没有断点调试功能,但是运行速度快;debug有断点调试功能,可以查看各变量的值,但是运行速度慢。有时我们需要在两者之间进行切换,比如一开始为了速度快而使用了release版本,但是中途出现bug,需要用debug模式进行调试。将visual studio的release模式变成debug,需要修改的地方包括但不限于:将调试器更换为debug打开顶部菜单栏,选择项目->属性,打开属性页,将配置改为de原创 2021-03-27 19:18:25 · 8330 阅读 · 6 评论 -
vs项目配置类型解析
vs项目配置类型可以通过以下方式查看: 选中一个解决方案,然后在vs顶部的菜单栏,依次选择项目->属性,打开该项目的属性页,然后在配置属性->常规->项目默认值下就可以看到配置类型了,有如下几种: 分别是生成文件、生成exe、生成lib、生成dll、实用工具等。其中,exe是可执行文件,dll和lib一般是用于调用的库或插件等,实用工具则是进行一些操作,可能并不生成任何东西。下面以cloudcompare来介绍每个项目都是用于生成什么的: 打开一个cloudcompar原创 2021-03-27 12:43:44 · 4327 阅读 · 0 评论 -
cloudcompare开发dll插件的调试方法
网上关于cloudcompare插件开发的资料较少,有些许教程,但是没有讲如何对插件进行调试的。毕竟插件是写好了以dll的形式在cc界面中使用的,而不是在vs里执行。不过,我们也可以像在vs里调试程序一样来调试插件。今天早上从一个师兄那学习到的一个新技能,在此记录一下: 首先打开cloudcompare安装的目录(也即camke时候设置的路径),我这里是prefix8。然后打开该路径下的cloudcompare文件夹,将里面所有的dll和plugins文件夹都复制下来,如下所示: 然后将这些d原创 2021-03-27 12:19:48 · 905 阅读 · 0 评论 -
cloudcompare插件编写教程
一、简介 首先从cloudcompare(后面简称cc)官网上下载源码,解压后在\plugins\example路径下可以看到名为ExamplePlugin、ExampleIOPlugin、ExampleGLPlugin这三个文件夹,以及一个CMakeLists.txt文件。这三个文件夹都是插件的模板,字面意思上理解,分别是写一般插件、输出输出、显示相关的。二、修改为自己的插件 下面讲一下一般插件ExamplePlugin的编写细则。首先复制一份ExamplePlugin,更改文件夹名字为自己的原创 2021-03-26 21:33:12 · 3446 阅读 · 2 评论 -
cmake编译后的sln中ALL_BUILD和INSTALL项目解析
使用cmake编译好一个库后,生成的sln工程一般会包含如下几个项目:ALL_BUILD生成所有项目,但不包括install和单元测试等。INSTALL把cmake脚本里install指令指定的东西安装到CMAKE_INSTALL_DIR里面。 一般在vs生成的时候,就只需要考虑依次生成这两个项目就可以了。下面举具体例子来说明。 首先是cloudcompare,它是一款非常流行的开源点云处理与可视化软件,轻量好用。具体的下载和编译过程可以参考这篇博客。打开sln工程,首先右键生成ALL_原创 2021-03-26 21:02:27 · 6991 阅读 · 3 评论 -
使用cmake和vs编译cloudcompare教程
首先,需要在电脑上先安装Qt以及cmake,这两个是编译cloudcompare(下述简称cc)必要的依赖和使用的工具。安装完qt以后,记得在系统的环境变量中加上qt的路径,加到bin目录截止,比如E:\Qt\5.9.9\msvc2017_64\bin。 然后,去cc官网,找到download(链接),下载最新的稳定版本源码: 点进去上图红圈中的github链接,然后下载zip压缩包并解压即可。然后,打开cmake,其中,source code路径选择刚刚zip文件解压后的文件夹。这里需要注意原创 2021-03-26 20:59:44 · 2660 阅读 · 14 评论