1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > Visual Studio问题汇总

Visual Studio问题汇总

时间:2024-03-20 17:58:19

相关推荐

Visual Studio问题汇总

合并两个vs解决方案:

不能

下载别人的vs程序易出现sdk不符合等问题 项目右键属性 目标版本平台, 平台工具集 都改为自己已有的就行了,还要注意配置和平台对应哦

1.问题:

“Callback”:模板 从属名称的使用必须以模板为前缀

解决:项目右键->属性-> C/C++ ->语言->符合模式 –>

原因:编译器本来应该调用callback模板函数,但是你的代码中又使用了作为函数参数的callback类型,这样在调用callback的时候编译器不知道使用callback的哪个具体模板了。Ss

2.问题:不在开发者模式

解决:打开电脑的windows设置 ->更新与安全->开发者选项->开发人员模式->是

3. 问题一:无法解析的外部符号 _WinMain@16,该符号在函数“int_cdecl invoke_main(void)”(?invoke_main@@YAHXZ)中被引用

解决:1)如果是windows应用程序:

项目右键->属性-> C/C++ ->预处理器->预处理器定义->删除_CONSOLE,添加_WINDOWS

项目右键->属性-> 链接器 ->系统->子系统->设置为窗口 (/SUBSYSTEM:WINDOWS)

如果是控制台程序:

项目右键->属性-> C/C++ ->预处理器->预处理器定义->删除_WINDOWS,添加_CONSOLE

项目右键->属性-> 链接器 ->系统->子系统->设置为控制台 (/SUBSYSTEM:CONSOLE)

原因:入口函数指定不当,即新建项目时windows应用程序和控制台应用程序选择与实际执行代码不符

问题二:error LNK: 无法解析的外部符号 "public: __cdeclXX(void)" (??0C@@QEAA@XZ),该符号在函数 main 中被引用

解决1:在文件里删除此方法(若不需要此方法)

解决2:属性里缺少对应的lib文件。

问题三:opengl文件

1>PT.obj : error LNK: 无法解析的外部符号 _auxSolidSphere@8,该符号在函数 _main 中被引用

1>PT.obj : error LNK: 无法解析的外部符号 _auxInitWindowA@4,该符号在函数 _main 中被引用

1>PT.obj : error LNK: 无法解析的外部符号 _auxInitPosition@16,该符号在函数 _main 中被引用

PT.obj : error LNK: 无法解析的外部符号 _auxInitDisplayMode@4,该符号在函数 _main 中被引用

解决:项目——项目属性——配置属性——链接器——输入——附加依赖项,添加

glut32.lib

Opengl32.lib

Glu32.lib

glaux.lib

glfw3.lib

glew32s.lib

freeglut.lib

glut.lib

问题四:

无法解析的外部符号 _glfwInit,该符号在函数 _main 中被引用

解决方法就是在程序的开头加入下面这一行:

#pragma comment(lib,"glfw.lib");

4. 深度清理C盘空间

Windows -> 设置->系统->存储->C盘

5. 编译提示警告被视为错误,没有生成object文件

项目->属性->c/c++->常规->将警告视为错误->否,注意是否涉及多个项目的属性

原因:该文件的代码页为英文,而我们系统中的代码页为中文

6.编译后显示多个不同的错误,有时解决一个错误,其他错误会消失。

7.编译成功,调试时提示:执行位置 0x0000000000000000 时发生访问冲突或者说是有未经处理的异常

项目->属性->链接器->系统->堆栈保留大小->16000000

原因:代码本身没有错误,内存写入错误,开发环境的默认配置不满足此代码的要求

8.SDK版本问题,版本不符合

在visual studio安装包即 笔记本左下角“开始”找到visual studio staller 点击 修改 页面右边选择sdk版本进行安装,然后对项目右键重定向项目,选择正确的sdk版本即可。

9.问题:D:\xxxx\xxxx.vcxproj : error : 无法读取项目文件“xxxx.csproj”。

D:\xxxx\xxxx.vcxproj( ): 未找到导入的项目“C:…..\xxxx.targets”。请确认 import 声明中的路径正确,且磁盘上存在该文件。

解决:1)这时用记事本打开xxxx.vcxproj

<Import Project=....... />

<ImportGroup Label="ExtensionSettings">

</ImportGroup>

<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">1234

找到`诸如这样的 Import 标签对 ,和你未导入的项目“C:…..\xxxx.targets”,把“C:…..\xxxx.targets”所在的 Import 行删除就可以了。注意,可能有多个,要全部删除。最后重新加载项目即可。

提醒一下,为了以后代码的可移植性,尽量少使用属性表,或者把属性表复制到工程内。

2)版本升级 参考:升级CUDA

升级版本时也会出现以上提示,同样用记事本打开xxxx.vcxproj,找到软件所在的Import标签对,修改版本号就可以了。

如:

<Import Project="$(VCTargetsPath)\BuildCustomizations\CUDA 5.5.props" />

修改CUDA的版本号即可

10.问题:The CUDA Toolkit v10.0 directory '' does not exist. Please verify the CUDA Toolkit is installed properly or define the CudaToolkitDir property to

resolve this error.

解决:项目属性-> CUDA C/C++ -> CUDA Toolkit Custom Dir 中填写自己的CUDA安装路径

11.问题:各种工具栏在 菜单的 工具-> 自定义上设置

12.问题:对路径XXXXXXXX的访问被拒绝

解决:右键打开报错路径的的菜单,选择“属性”;在“属性”窗体中切换到“安全”选项框;在“安全”选项框中,点击“编辑”,进入“权限”窗体;在“用户和组”中选择“IIS_USRS”,赋予其“完全控制”权限。

13.问题:该文件包含不能在当前代码页(936)中表示的字符。

解决:点击错误提示,打开报错的文件。点“文件”–>“高级保存”; 根据错误提示,选择正确的格式保存。

14

error: more than one instance of overloaded function "__hadd" matches the argument list

解决方案

修改代码

EIGEN_STRONG_INLINE __device__ half operator + (const half& a, const half& b) {

+ #if defined(EIGEN_CUDACC_VER) && EIGEN_CUDACC_VER >= 90000

+ return __hadd(::__half(a), ::__half(b));

+ #else

return __hadd(a, b);

+ #endif

}

EIGEN_STRONG_INLINE __device__ half operator * (const half& a, const half& b) {

return __hmul(a, b);

return __hsub(a, b);

}

EIGEN_STRONG_INLINE __device__ half operator / (const half& a, const half& b) {

+ #if defined(EIGEN_CUDACC_VER) && EIGEN_CUDACC_VER >= 90000

+ return __hdiv(a, b);

+ #else

float num = __half2float(a);

float denom = __half2float(b);

return __float2half(num / denom);

+ #endif

}

EIGEN_STRONG_INLINE __device__ half operator - (const half& a) {

return __hneg(a);

15.无法打开输入文件 xxx.lib

解决:方法1. 在项目属性,链接器,常规,附加库目录 应该是项目的lib地址和自己放置的绝对地址不吻合,找到项目的lib文件并修改为本机的地址,并在项目属性,链接器,输入,附加依赖项中加入自己的lib文件名称(注意在debug模式还是release模式)

(不推荐)方法2.在C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib\amd64 添加此lib文件,一般此文件在项目文件目录lib/release中,自己在网上找的lib文件易不符合此项目而报错。

16.注释快捷键

打注释:Ctrl+k,Ctrl+c

取消注释 Ctrl+k,Ctrl+u

17.程序缺少*.dll文件

网上找到此dll文件,拷贝进项目生成的.exe文件目录下。

18.无法打开.lib, 或者其他 .h文件(cuda相关的)

解决一:或许是配置属性的问题:

VC++目录->包含目录: (安装cuda时已经选择了sample文件就不用写第三个目录了。)

VC++目录->库目录:

解决二:

注意这个地方一般是release x64

20. LNK1112 模块计算机类型“x64”与目标计算机类型“X86”冲突

解决方法:运行CMake,点 configure,在弹出的对话框内选择 Visual Studio ,这个地方需要注意,第二行选win64,完成后选择“Generate”。

21. debug模式和release模式有点区别

Release 下无法定位程序输入点于动态链接库xxx.dll

将dll文件移动到release目录下(和exe文件相同位置) 不一定能成功

因为它有 相互依赖的dll 需要把多个dll文件都放到这个目录下才可以成功

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。