visual studio 2005 入门

开发者福利!热门AI工具限时免费用 购周边即赠Coding Plan Lite,Claude Code、Cursor等20+工具畅享,效率翻倍! 阅读详情
终于卸掉了Visual C++6.0,换上了全新的Visual C++2005。尽管是简体中文版的,但是功能强大的Visual studio 2005 IDE庞大的开发环境和N多的配置设置,学习起来还不是很简单。C++/CLI通过对ISO C++ 标准的纯粹扩展和新语法,不像传统的MS-DOS 控制台程序,所以对于新手,首先应弄明白怎样在Visual studio 2005开发环境下编译常规控制台应用程序及Windows应用程序。下面是本人的入门手记: 1) win32控制台应用程序 文件—〉新建—〉项目à Visual C++——〉win32——〉win32控制台应用程序—〉控制台应用程序—〉预编译头—〉完成—〉新建win32.cpp. <1>//Basic IOProgram // winconsole.cpp : 定义控制台应用程序的入口点。 #include "stdafx.h" #include using std::cin; using std::cout; int _tmain(int argc, _TCHAR* argv[]) { cout<<"Hello World./n"; getchar(); return 0; } Ctrl+F7编译,Ctrl+F5运行。 <2> //托换代码和非托管代码混合编程 // managed.cpp : 定义控制台应用程序的入口点。 #include "stdafx.h" #using // 为了使用Console::WriteLine方法 #include // 为了使用printf using namespace System; // 声明非托管代码 #pragma unmanaged void print(char *msg) { printf("%s/n", msg); } // 切换回托换代码 #pragma managed int _tmain(int argc, _TCHAR* argv[]) { // 调用托管的方法输出到控制台 Console::WriteLine(L"Hello world from managed method"); // 使用标准输出 print("hello world from unmanaged method"); getchar(); return 0; } 注意: 项目属性—〉配置属性—〉常规—〉公共语言运行库支持—〉公共语言运行库支持(/clr) 我们观察“配置属性—〉常规——〉多字节字符集/Unicode字符集”,这一选项默认为“Unicode字符集”。在vs2005以前版本的vs默认使用多字节字符集,而vs2005默认使用unicode字符集,这会使一些代码不能编译通过。这里我们要弄清楚从main到_tmain和从char*到_TCHAR*的问题。 从Visual Studio 7开始,Microsoft引入了所谓的一般文本例程映射。TCHAR.H中定义的是映射到多字节字符集 (MBCS)、单字节字符集 (SBCS)和Unicode模型的宏或内联函数。这些映射处理那些表示为单字节ANSI ASCII或者双字节Unicode编码的字符数据。 如果正在遵从Unicode算法,则要确定把所有的main()函数改为_tmain(),并把字符指针从char*改为_TCHAR*。关于Windows编码问题将会经常遇到,大家可以网上查阅相关资料。 2) CLR控制台应用程序 文件—〉新建—〉项目à Visual C++——〉CLR—〉CLR控制台应用程序—〉打开左侧“解决方案资源管理器”中的源文件—〉右击—〉添加新项—〉建立.cpp。 注意: 项目属性—〉配置属性—〉常规—〉公共语言运行库支持—〉公共语言运行库支持(/clr) // clrconsole.cpp: 主项目文件。 #include "stdafx.h" using namespace System; int main(array ^args) { Console::WriteLine(L"Hello World from CLR console application."); return 0; } 3) MFC编写windows控制台应用程序 文件—〉新建—〉项目à Visual C++——〉win32——〉win32控制台应用程序—〉控制台应用程序—〉空项目 #include //必需 #include // 必需 #include using std::cout; using std::endl; CWinApp theApp; //创建应用程序实例 int _tmain(int argc, TCHAR* argv[], TCHAR* envp[]) //入口函数 { int nRetCode = 0; if (!AfxWinInit(::GetModuleHandle(NULL), NULL, ::GetCommandLine(), 0) //由于没有调用MFC提供的WinMain函数,所以在此AfxWinInit进行初始化 ) { nRetCode = 1; } else { CString strHello("Hello World from MFC winconsole platform"); //MFC类CString定义一个字符串对象 AfxMessageBox(strHello); char *strHelloT = "Hello World from win32 console platform"; cout << strHelloT << endl; } getchar(); return nRetCode; } fatal error C1189: #error : Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version. Please #define _AFXDLL or do not use /MD[d] 解决方法:项目属性—〉配置属性—〉常规—〉MFC的使用—〉在共享DLL中使用MFC 或在静态中使用MFC。 4)利用vc++2005 进行传统SDK编程; 文件—〉新建—〉项目à Visual C++——〉win32——〉win32应用程序—〉空项目—〉完成—〉新建win32.cpp. #include //消息处理函数,Windows系统规定每个消息处理函数的定义形式都相同 LRESULT CALLBACK WndProc( HWND hWnd, //窗口句柄 UINT nMessage, //所发出的消息 WPARAM wParam, //参数1 LPARAM lParam //参数2 ) { switch(nMessage) { //响应WM_LBUTTONDOWN消息 case WM_LBUTTONDOWN: MessageBox(hWnd,L"收到WM_LBUTTONDOWN消息!",L"通知",MB_OK); break; //响应WM_RBUTTONDOWN消息 case WM_RBUTTONDOWN: MessageBox(hWnd,L"收到WM_RBUTTONDOWN消息!",L"通知",MB_OK); break; //响应WM_CREATE消息 case WM_CREATE: MessageBox(hWnd,L"收到WM_CREATE消息!",L"通知",MB_OK); break; //响应WM_DESTROY消息 case WM_DESTROY: MessageBox(hWnd,L"收到WM_DESTROY消息!",L"通知",MB_OK); PostQuitMessage(0); break; //必须调用函数DefWindowProc(),这是Windows系统多规定的 default: return DefWindowProc(hWnd,nMessage,wParam,lParam); } return FALSE; } //应用程序入口函数(此程序第一个被执行) int WINAPI WinMain( HINSTANCE hInstance, //程序实例句柄 HINSTANCE hPrevInstance,//为保持与Win16兼容的句柄 LPSTR lpCmdLine,// 命令行参数 int nCmdShow //初始化窗口显示方式 ) { WNDCLASS oWnd; //窗口类,可为WNDCLASS MSG msgTmp; //Windows 消息 HWND hWnd; //窗口句柄 oWnd.style=CS_HREDRAW|CS_VREDRAW; //窗口类型 oWnd.lpfnWndProc=(WNDPROC)WndProc; //窗口处理函数为WndProc() oWnd.cbClsExtra=NULL; //窗口类无扩展 oWnd.cbWndExtra=NULL; //窗口实例无扩展 oWnd.hInstance=hInstance; //当前实例句柄 oWnd.hIcon=LoadIcon(NULL,IDI_APPLICATION); //窗口最小化图标,为默认图标 oWnd.hCursor=LoadCursor(NULL,IDC_ARROW); //用箭头作为鼠标图标 oWnd.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);//以白色作为窗口颜色 oWnd.lpszMenuName=NULL; //窗口无菜单 oWnd.lpszClassName=L"第一个Windows程序"; //窗口所属类名 //注册窗口类 if(!RegisterClass(&oWnd)) { MessageBeep(0); //如注册失败则发出警告 return FALSE; } //创建窗口 hWnd=CreateWindow( L"第一个Windows程序", //注册的窗口类名 L"第一个vWindows程序", //窗口标题名 WS_OVERLAPPEDWINDOW, //窗口的风格 CW_USEDEFAULT, //显示窗口的左上角的X坐标,取默认值 CW_USEDEFAULT, //显示窗口的左上角的Y坐标,取默认值 CW_USEDEFAULT, //显示窗口的右下角的X坐标,取默认值 CW_USEDEFAULT, //显示窗口的右下角的Y坐标,取默认值 NULL, //此窗口无父窗口 NULL, //菜单句柄(此处设为没有菜单句柄) hInstance, //程序实力句柄 NULL //指向一个传递给窗口的指针型参数,此处设置为空 ); if(!hWnd) return FALSE; //创建窗口失败,返回FALSE ShowWindow(hWnd,nCmdShow); //显示窗口 UpdateWindow(hWnd); //更新窗口 while(GetMessage(&msgTmp,NULL,0,0)) { TranslateMessage(&msgTmp); //翻译消息 DispatchMessage(&msgTmp); //将消息传递给处理函数 } return msgTmp.wParam; //返回消息的附加参数 } 编译出错:使用VC2005 Express版时找不到msvcr80d.dll文件 解决方法:在"属性->配置属性->清单工具->常规"下有一个"使用FAT32解决办法“,把它选成“是”,再重新生成解决方案(重新编译)!(注意:一定要先配置这个选项,然后再编译工程,要不然还是不好用) 5)利用MFC类库开发Windows 应用程序 文件—〉新建—〉项目à Visual C++——〉win32——〉win32项目—〉win32应用程序—〉空项目—〉添加源文件 #include //MFC头文件 class CHelloApp:public CWinApp //建立应用程序类的实例 { public: virtual BOOL InitInstance(); }; CHelloApp theApp; class CMainFrame:public CFrameWnd //声明主窗口类 { public: CMainFrame() { Create(NULL,"I love U",WS_OVERLAPPEDWINDOW,CRect(0,0,400,300)); } protected: afx_msg void OnLButtonDown(UINT nFlags,CPoint point); afx_msg void OnRButtonDown(UINT nFlags,CPoint point); DECLARE_MESSAGE_MAP() }; //消息映射入口 BEGIN_MESSAGE_MAP(CMainFrame,CFrameWnd) ON_WM_LBUTTONDOWN() //单击鼠标左键的映射宏 ON_WM_RBUTTONDOWN() END_MESSAGE_MAP() //定义消息映射函数 void CMainFrame::OnLButtonDown(UINT nFlags,CPoint point) { MessageBox("万古长空","hello"); CFrameWnd::OnLButtonDown(nFlags,point); } void CMainFrame::OnRButtonDown(UINT nFlags,CPoint point) { MessageBox("一朝风月","hello"); CFrameWnd::OnRButtonDown(nFlags,point); } //每当应用程序执行时都要调用的初始化函数 BOOL CHelloApp::InitInstance() { m_pMainWnd=new CMainFrame(); m_pMainWnd->ShowWindow(m_nCmdShow); m_pMainWnd->UpdateWindow(); return TRUE; } 注意1:项目属性—〉配置属性—〉常规—〉MFC的使用—〉在共享DLL中使用MFC 或在静态中使用MFC。 编译错误:error C2664: 'CFrameWnd::Create' : cannot convert parameter 2 from 'const char [9]' to 'LPCTSTR' Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast 解决方法:项目属性—〉配置属性—〉常规—〉字符集—〉多字节字符集
visual studio 2005 ( vs2005 , vc2005 ) 编译的应用程序无法运行的解决方案 如果应用程序链接时使用了其他人编译好的库,由于这些直接使用的库依赖的是其编译环境的VS2005运行库的准确版本, 和当前安装的VS2005的版本可能不符,尤其是依赖更新的版本, 而当前安装的VS2005版本比较旧时,就会出现上述问题。网上的通常解决方案是,尝试安装不同版本的VS2005 ( VC2005 ) 运行库,这个方法对于release配置编译出来的应用程序运行问题,是个好的解决方案。上面命令中xxx表示应用程序名,备份的manifest文件在当前目录,生成的应用程序在debug目录。 阅读详情

相关推荐

Visual Studio安装教程

Visual Studio安装教程 前言:近来在学习《opencv3编程入门》,因为这本书里面都是由c++实现的,所以就下载了visual studio以备使用。 一、官网下载 官网下载地址: https://visualstudio.microsoft.com/zh-hans/downloads/ 因为是个人学习用途,所以我这里下载的是社区版本。 下载下来的是一个.exe文件 双击打开后,会加载一些东西。最后出现下面的界面 二、安装visual studio (一)更改安装路径 首先,我们要设置

m0_67393827的博客 8万+

Visual Studio下载安装教程(非常详细)从零基础入门到精通,看完这一篇就够了

这时我们就可以自定义选择组件进行下载因为我是需要使用C++,所以这里选择了使用C++的桌面开发和visual studio扩展开发下面会显示下载所占的空间,供参考(我这里因为已经下载过了)大家可以根据具体需求,选择自己需要下载的组件选择好后,在右下角选择安装,就会出现下载界面,等下载完毕后如图所示,点击启动就可以使用啦~最后汇总一下,visual studio安装中使用的内存情况:D盘占用6.8GC盘占用1.G。

Javachichi的博客 26万+

配置VS2005环境以支持Boost、QT和VTK

在本篇文章中,我们将详细介绍如何配置Visual Studio 2005VS2005)环境,以便支持Boost、QT和VTK库。在本篇文章中,我们将详细介绍如何配置Visual Studio 2005VS2005)环境,以便支持Boost、QT和VTK库。至此,您已成功配置了VS2005环境以支持Boost、QT和VTK库配置Visual Studio 2005环境以支持Boost、QT和VTK。步骤2:安装Boost库。步骤2:安装Boost库。步骤4:安装VTK库。步骤4:安装VTK库。

VipeNvml的博客 370

Visual studio的安装教程(最新最详细)新手小白必备

Visual Studio 集成开发环境是一种创新启动板,可用于编辑、调试并生成代码,然后发布应用。集成开发环境 (IDE) 是一个功能丰富的程序,可用于软件开发的许多方面。除了大多数 IDE 提供的标准编辑器和调试器之外,Visual Studio 还包括编译器、代码完成工具、图形设计器和许多其他功能,以简化软件开发过程。此图像显示 Visual Studio 具有一个打开的项目和若干可能会使用的关键工具窗口:可通过解决方案资源管理器(右上方)查看、导航和管理代码文件。

weixin_45303602的博客 1万+

14、Visual Studio 2005 开发入门指南

本文详细介绍了 Visual Studio 2005 的核心开发功能,包括类图设计工具的使用、继承与关联关系的创建、错误列表窗口的管理以及代码编辑器的增强特性如 IntelliSense 和泛型支持。同时,文章还总结了关键功能模块的操作要点,提供了实际开发流程图与操作建议,并针对常见问题给出了解决方案。此外,还对比了 Visual Studio 2005 与传统及现代开发工具的优劣势,为开发者选择合适的开发环境提供了参考建议。

alpha的博客 59

Visual studio 2005入门

1)      win32控制台应用程序 文件—〉新建—〉项目à Visual C++——〉win32——〉win32控制台应用程序—〉控制台应用程序—〉预编译头—〉完成—〉新建win32.cpp.//Basic IOProgram// winconsole.cpp : 定义控制台应用程序的入口点。#include "stdafx.h"#include using std:

专栏 1573

快速入门Visual Studio 2005 IDE精简指南

Visual Studio 2005 是一款由微软公司开发的集成开发环境(IDE),主要用于开发.NET Framework应用程序。自发布以来,它就因其强大的功能和用户友好的界面被广大开发人员所青睐。Visual Studio 2005 提供了代码编辑、调试、数据库设计以及项目管理等工具,极大地提高了软件开发效率。快速访问功能是Visual Studio提供的一个强大的特性,它允许用户快速地查找和执行命令,而无需深入了解其具体位置。你可以通过Ctrl + Q。

weixin_30661119的博客 786

Microsoft visual studio 2005入门实战

目     录 (一)Microsoft visual studio 2005简介(二)Microsoft visual studio 2005的安装和环境配置(三)如何开发一个新C++项目?(四)如何在C++中应用已建好的项目?(五)如何在C++文件中写代码?(六)如何在C++中调试运行C++程序?(七)实际应用程序举例说明(1)创建 Windows 窗体控件

piero_hover的专栏 4247

Visual Studio2005入门.Net系列视频教程

Visual Studio2005入门.Net系列视频教程 中文MSDNhttp://www.microsoft.com/china/msdn/1.Visual Studio2005入门.Net系列视频教程http://www.cnblogs.com/thcjp/archive/2006/08/29/489491.aspx2.VS2005视频教程 - 网易学院视频中心http://te

sunjay117的专栏 1375

Visual Studio 2005MFC使用入门的一些技巧

下面的一些是我使用VS2005进行MFC开发时候遇到的一些问题,很多叫你如何MFC入门的书籍都是面向让你在VC6.0的平台的,当你需要使用更高版本的时候势必会遇到很多类似的问题,这些我也是作为一个初学者来稍微谈一谈而已。一、为对话框添加主菜单1.摁ctrl+r添加menu资源,自

laiconglin的专栏 2032

Visual Studio 2005入门 之 C#基本语法 小结考试[视频]

Visual Studio 2005入门 之 C#基本语法 小结考试[视频]

2233

Visual Studio 2005 学习笔记一 入门

转载自:http://blog.163.com/zm_shichaoren/blog/static/6880234120087211452776/ Visual studio 2005入门记 终于卸掉了Visual C++6.0,换上了全新的Visual C++2005。尽管是简体中文版的,但是功能强大的Visual studio 2005 IDE庞大的开发环境和N多的配置设置,学习...

weixin_30636089的博客 145

【配套代码 及 视频下载地址】 使用Visual Studio2005入门.Net2.0系列视频教程

附上我主推的产品,用天轰穿的信誉保证,对你绝对有用,当然,前提是你自己想学,NND,你自己不想学,啥都靠我可不行,我又不是神仙。   总目录以及.NET开发人员的行情 http://www.ixueyun.com/kcb/   6个月让你达到半年到一年开发经验的课程体系:http://www.ixueyun.com/kcb/02/index.htmlhttp://www.ixueyun...

weixin_34049948的博客 280

Visual C++ 6.0到Studio 2005入门之Hello,World!

以前一直用Visual C++ 6.0,安装简单轻巧,上手方便。我用VC6的原因很简单,这是我们的教学语言。上课就是用的这玩意教的。教授认为,这是C++的非常新的版本,和以前有很大改进。说的也是,以前不一直都用Turbo C的么?现在时代进步了,再用落后20年的东西显然不合时宜,所以大家教学都用上了只落后10年的Visual C++ 6.0。时代不同啦,Visual Studio 2005 S

WZ_Yong的专栏 3313

Visual Studio2005入门.Net系列视频教程 thc123系列(网易学院)

第一节 准备工作(本节为文字部分) ·准备工作 特价手机话费充值,亏本充值,淘宝店铺 http://tqhb.taobao.com &lt;script type="text/javascript"&gt;&lt;/script&gt; 第二节 vs2005的环境(以下章节为视频) ·起始页与创建WEB站点和创建新页面 ·对工具栏作说明 ·制作第一个页...

wuyisky 238

[Transfer]Visual Studio2005入门.Net系列视频教程

[Transfer]Visual Studio2005入门.Net系列视频教程 来源:http://www.cnblogs.com/thcjp/archive/2006/08/29/489491.html vs2005的环境 1. 起始页与创建WEB站点和创建新页面√ 2. 对工具栏作说明√ 3. 制作第一个页面及启动运行√...

weixin_30567471的博客 130

C#入门(一)-Visual Studio 2005 初探

一、VIsual Studio C# 应用范围 项目: 控制台应用程序、Windows应用程序、类库 网站: ASP.NET网站、ASP.NET Web服务 二、程序集 (.dll .exe) 可以看做一个或多个物理程序模块的组合,它是.NET应用程序打包、运行和发布的最小单位。 ....

weixin_34345753的博客 111
上一篇: 文档计划
下一篇: 几个通用的函数
清箫
博客等级 码龄19年 930粉丝 160原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值