搜档网
当前位置:搜档网 › vs2008与Mtlab2015a的混合编程

vs2008与Mtlab2015a的混合编程

vs2008与Mtlab2015a的混合编程
vs2008与Mtlab2015a的混合编程

唉,在做支持向量机分类优化实验的时候,支持向量机的c#代码写的头疼。有些核函数和分类训练函数不会写,搞得头疼。后来听同学介绍说matlab里面有包直接可以用,我又去载了一个R2015a最新的matlab,特么现在又遇到问题。Matlab语法不会啊,咋用??

然后我查了些资料,说vs2008可以和matlab进行混合编程,如果能实现,将会减少很多的工程量。我看了网上的教程,都以vs2008和matlab2010a为例进行的,而这个和最新的matlab2015a还是有很大的区别,最后我打算去重新做一次。

注意:下面进行实验的版本是vs2008和MatlabR2015a

只要按照我下面的步骤一步步下去,一定能实现。

一、VS准备阶段

1.先建一个C# 接口,在C# 里面新建一个类库,为了命名易懂,我

们命名为DemoTestInterface :如下图所示:

2.然后点击“生成”-》配置

管理器。

3.我的matlab是64位的,所以把平台的配置改为×6

4.

(从活动解决方案平台那里添加)

4.然后我们添加MWArry.dll ,右键添加引用,路径

为:..\MATLAB\toolbox\dotnetbuilder\bin\win32\v2.0\

本机的位置是:

(有些vs2008的位置是在,可以直接在.Net 选项卡中找到,MathWorks, .NET MWArray API。在此选项卡中,按键盘上的“M”,出现的第一个,就是所要的文件。VS2010 中目前未能实现通过此方法添加。也可以与VS2010 一样,在浏览中添加,我在我的

vs里面是没有找到这个东西,,尴尬~~)

添加后的内容为:

然后在添加using 命名空间。并修改类类型为Interface 和相应的接口名。并注意接口名与命名空间名不能一样。如下图所示:、

接下来我们拿矩阵乘法的例子进行示范:

添加所需要实现的Matlab 函数声明,本例中实现的是两个矩阵的乘法,添加声明,其中

MWNumericArray 是Matlab 与C#的变量转换中间类,此处,只需要给出主函数的声明,子函数不需要声明。如下图所示:

然后生成此接口(在bin/x64/debug目录下有

这个dll为接口。),待后面使用。

二、matlab实现阶段

编写需要实现的主函数,函数名需要与C#声明的函数名相同。如果需要使用到子函数,一

并编写子函数,此处使用子函数,将矩阵乘以1。由于本文只是一个示例,所以具体的变量保护的措施,建议最好在C#调用Matlab 之前就做好,结合本例,如两个矩阵不一样大小、等等。注意主函数中的“double”,如果希望主C#调用的结果是double 型的,此处需要强制转换成double。

我在这里写了两个函数MatrixMultiply 和SubFun

然后新建一个Matlab 工程,直接在Command Window 中输入deploytool 创建,如下:

然后选择第一个liabrary compiler

得到下面一个界面:

我们将我们的工程名字命名为MatlabMultiply.prj。如下图所示:

同时很关键的一点:把类型改成.NET Assembly ,

然后我们添加功能函数:

然后把右边的滚动条拉到最下面,我们进行设置。

需要设置两个地方,一个是.Net 设置,另一个是Type Safe API,在.Net 设置中,Microsoft Framework 默认选择是default,将此处按照目标环境修改,如VS2008 就选择3.5,VS2010 选择4.0。这里选择3.5。在Type Safe API 设置中,需要将上一步骤生成的接口文件复制到当前Matlab 函数的文件夹中,并在Interface assembly 中选中。如下图所示:

然后我们进行打包:

点击“Package”。

等待其完成。。。

这样就表示完成了。我们可以打开生成文件,

生成的文件中一般需要用到的有如下三个文件,

class1DemoTest.dll、MatlabMultiplyNative.dll和DemoTestInterface.dll。特别的是,第二个文件,在for_resdistribution_files_only 文件夹中,有一个名字类似,但是不带Native 的文件,此文件不需要。第三个文件,是此前C#生成的接口文件。将此三个文件复制到需要调用的

工程中,并添加引用。下一节会给出具体调用方法。

三、组合阶段

我们建一个简单的控制台程序。

添加刚才在matlab生成的接口dll文件。即添加引用。同时添加MWArray.DLL接口文件。

然后在代码上端添加四个命名空间

然后以Matlab 三个文件中的第一个文件CSIDemoTest.dll 的文件名CSIDemoTest 为类名,实例化一个类。然后编程:

我们进行调试,,

由此课件已经通过matlab实现矩阵的乘法。

下面的几个点是由大牛那里知道的:

特此说明;。

关于中间类的说明:数据类型到M 类型:如果C++/C#数据不是数组,直接将值传递给已经初始化的MWArray 数组中的成员。直接将数据类型赋值给已经初始化的MWNumericArray 变量。直接将字符串类赋值给已经初始化的MWCharArray 变量。如果是数组类型,直接赋值给MWNumericArray 变量;赋值给MWArray 变量,则在前面加上类型转换如:(MWNumericArray)进行强制转换。总之,MWArray 是总类型,其它的以MW 开头,以Array 结尾的变量类型都可以直接对它进行赋值或取值。M 类型到C++/C#数据类型MWArray M 类型,它是M 文件的编译后内部的标准类型,一切C++/C#类型都要最终转换成此类型,方可作为参数调用M 语言函数。MWCharArray M 的字符串类型,使用它可以将M 中的字符类型转换成C++/C#的字符串类型。MWNumericArray 是MWArray 与C#等语言的转换中间类型。常用的转换函数:

1、public Array ToArray(MWArrayComponent component);

将M 类型转换成C#的Array 类型,然后可以直接转换成其它类型的数组。

2、public byte ToScalarByte();

将M 类型转换成C#的字节类型;

3、public double ToScalarDouble();

将M 类型转换成C#的双精度类型;

double temp = ((MWNumericArray)(mwArgout[0])).ToScalarDouble(); 4、public float ToScalarFloat();

将M 类型转换成C#的单精度类型;

5、public int ToScalarInteger();

将M 类型转换成C#的整型类型;

6、public long ToScalarLong();

将M 类型转换成C#的长整C/C++/C#数据型类型;

7、public short ToScalarShort();

将M 类型转换成C#的短整型类型;

8、public override string ToString();

将M 类型转换成C#的字符串类型;

string arror = mwArgout[2].ToString();

9、public Array ToVector(MWArrayComponent component);

将M 类型转换成C#的Array 类型,然后可以直接转换成其它类型的数组。

下面使用调试过的代码示例表述1 和9 两个函数的区别:

1、double[,] Temp1 = new double[1,3];

Temp1=

(double[,])((MWNumericArray)mwArgout[1]).ToArray(MWArrayCompone nt.Real);

9、double[] s1 = new double[2];

s1=(double[])((MWNumericArray)mwArgout[1]).ToVector(MWArrayComponent.Real);从以上代码可以看出:函数1 得到了二维数组,而9 则是得到了一维数组。转换成C++/C#数据类型后,它们的维数均为从0 开始。

Microsoft_Visual_Studio入门经典教程资料

写在前面 在我还在上学的时候,我选择了C++,最初我用VC6作为我的IDE,我看过很多本C++的教材,有的适合我,有的不适合我,其中有一本叫《Visual C++ 2005入门经典》的书帮了我不少的忙。因为通常的C++教材都只会介绍C++的语法什么的,很少会告诉我们如何去编译、运行,告诉我们什么是控制台程序,什么事Win程序,什么是GUI程序,C++能干什么,VC和C++的区别是什么。现在有很多的朋友应该也有这些问题吧? 学C++用C++也有几年了,算不上熟悉,算是初窥门径吧,我想我应该做点什么帮助一下那些和曾经的我一样困惑的朋友,特别是学生朋友,告诉他们他们所困惑的问题的答案。记得我学C++的时候,没有人教,有的时候也走了不少弯路,甚至连调试也不会,也不知道可以通过看调用堆栈看调用次序,还自己慢慢的去搜索,好傻啊。 接下来我会做一个《Visual C++ 2010入门教程》系列,用来帮助初学者。刚开始学的时候是很痛苦的,这个我深有体会,特别是身边还没有人能够指导一二的。内容主要涵盖在Windows下面使用C++进行开发的常见内容,Visual Studio 2010的使用,如何创建新项目,如何调试,如果配置项目属性等等,另外还会介绍Visual C++ 2010中新加如的一些内容,包括一些新的STL组建,一些新的语法支持等等。 由于本人水平有限,其中难免有错误,希望大家谅解,如果大家有发现问题还请务必及时指出来,否则误导了他人我就罪不容恕了。 注意,本教程非C++教程,不会教你C++,只会教你如何使用 Visual C++ 2010去练习去学习其它C++教材上面的程序。因此建议大家认真的去看其他的C++教程,在使用Visual C++ 2010实践的时候如果遇到问题可以到这里来参考。推荐《C++ Primer》、《C++程序设计语言》《Visual C++ 2008入门经典》。 第一章:关于Visual Studio、VC和C++的那些事 首先,这三个东西有什么区别呢?VC和C++是相同的吗,有什么区别呢?我刚开始学C++的时候也有这样的问题,在这里我来替大家解释一下他们到底是什么。

Win2008 R2文件迁移实战之系统要求

Win2008 R2文件迁移实战之系统要求 本文阐述将文件服务从Windows 2003 Server 或更高版本的文件服务器迁移到Windows Server 2008 R2 操作系统过程的系统准备篇。迁移中包含的文件服务为数据和共享、本地用户和组、分布式文件系统(DFS) 命名空间、分布式文件系统(DFS) 复制、文件服务器资源管理器(FSRM)、特定于服务器消息块(SMB) 和客户端缓存(CSC) 的组策略、共享文件夹的卷影副本以及服务器标识。 一、系统要求 1.1 硬件要求 请验证目标服务器数据位置是否有足够的可用空间用来迁移数据。确保目标服务器硬盘驱动器的大小大于或等于源服务器硬盘驱动器。 1.2 软件要求 必须满足几个软件要求,才能确保成功迁移。 请查阅下面的迁移矩阵,以确定是否可以将源服务器上的Windows Server 版本迁移到Windows Server 2008 R2。 确定当前在基于x86 的服务器上运行的所有软件都是您要在基于x64 的服务器上运行的软件,并检查当前的所有软件在Windows Server 2008 R2 或Windows Server 2008 R2 基于x64 的服务器核心服务器上都是兼容的。 使用Windows PowerShell cmdlet Cmdlet(发音为"command-lets")是Windows PowerShell 随附的内置命令,默认情况下作为Windows Server 2008 R2 的一部分进行安装。除特别说明外,Windows PowerShell cmdlet 不区分大小写。 尽管大多数文件迁移命令是Windows PowerShell cmdlet,但是您可以在可执行文件名称前面添加与号(&),在Windows PowerShell 会话中运行可执行文件。与号是Windows PowerShell 中的调用运算符。 如果可执行文件不在当前目录中,请添加完全限定的路径名,如以下示例所示。如果可执行文件名称包含空格,请在文件名前面加上.\,然后用引号括住文件名。 不在当前目录中的可执行文件:PS C:\> &

vs2008的系统要求

Visual Studio 2008 安装要求 目录 ? 1. 系统要求 ? 1.1. 支持的体系结构 ? 1.2. 支持的操作系统 ? 1.3. 硬件要求 ? 2. 已知问题 ? 2.1. 安装 ? 2.2. 卸载 ? 2.2.1. 在安装有Visual Studio 早期版本的计算机上 ? 2.2.2. 在未安装Visual Studio 早期版本的计算机上? 1. 系统要求 1.1. 支持的体系结构 ?x86 ?x64 (WOW) 1.2. 支持的操作系统 ?Microsoft Windows X P ?Microsoft Windows Server 2003 ?Windows Vista 1.3. 硬件要求 ?最低要求:1.6 GHz CPU、384 MB RAM、1024x768 显示器、5400 RPM 硬盘 ?建议配置:2.2 GHz 或速度更快的CPU、1024 MB 或更大容量的RAM、1280x1024 显示器、7200 RPM 或更高转速的硬盘 ?在Windows Vista 上:2.4 GHz CPU、768 MB RAM 2. 已知问题 2.1. 安装

2.1.1. Visual Studio SharePoint 工作流功能具有特定的安装要求。 若要使用Visual Studio Tools for Office 中的SharePoint 工作流开发工具,请按照指定的顺序完成下列安装步骤。 1. 安装Windows Server 2003。 2. 安装Internet 信息服务(IIS)。在“控制面板”中依次选择“添加/删除Windows 组件”、“应用程序服务器”、“详细信息”和“Internet 信息服务(IIS)”。 3. 安装 .NET Framework 2.0 和 .NET Framework 3.0。 4. 在IIS 管理器中启用https://www.sodocs.net/doc/8c327631.html, 2.0.5727。 5. 安装Microsoft Office SharePoint Server 2007。请确保运行配置向导。 6. 安装Visual Studio 2008。请使用默认安装,或确保在安装向导的“自定义安装”页上选择“Visual Studio Tools for Office”。 7. (可选)SMTP 服务。安装此服务后,将可以使用SharePoint 中支持电子邮件的功能。若要了解有关这些功能的更多信息,请查阅SharePoint 产品文档。 解决此问题的方法: 尚未提供解决方法。 2.1.2. 不支持从SQL Server Compact 3.5 CTP 或SQL Server Compact 3.5 Beta 升级至SQL Server Compact 3.5 的发行版本。 不支持将SQL Server Compact 3.5 从CTP 和Beta 版本升级至发行版本。 解决此问题的方法: 安装SQL Server Compact 3.5 或Visual Studio 2008 的发行版本之前,请先卸载SQL Server Compact 3.5、SQL Server Compact 3.5 for Devices 和SQL Server Compact 3.5 设计工具的所有CTP 和Beta 版本 2.1. 3. 用户收到错误消息“加载安装组件时遇到问题。取消安装”。 用户收到错误消息“加载安装组件时遇到问题。取消安装”,然后安装被取消。仅当系统未安装Windows Installer 3.1 时才会出现此情况。用户应先安装Windows Installer 3.1,然后再重试安装。 解决此问题的方法: 1. 在“添加或删除程序”中的已安装程序列表中检查是否存在Windows Installer 3.1。

VS2010-MFC编程入门

VS2010/MFC编程入门之前言 分类标签: 编程入门VC++VS2010MFC 鸡啄米的C++编程入门系列给大家讲了C++的编程入门知识,大家对C++语言在语法和设计思想上应该有了一定的了解了。但是教程中讲的例子只是一个个简单的例程,并没有可视化窗口。鸡啄米在这套VS2010/MFC编程入门教程中将会给大家讲解怎样使用VS2010进行可视化编程,也就是基于窗口的程序。 C++编程入门系列主要偏重于理论方面的知识,目的是让大家打好底子,练好内功,在使用VC++编程时不至于丈二和尚摸不着头脑。本套教程也会涉及到VC++的原理性的东西,同样更重视实用性,让大家学完本套教程以后,基本的界面程序都能很容易编写出来。 VC++简介 VC++全称是Visual C++,是由微软提供的C++开发工具,它与C++的根本区别就在于,C ++是语言,而VC++是用C++语言编写程序的工具平台。VC++不仅是一个编译器更是一个集成开发环境,包括编辑器、调试器和编译器等,一般它包含在Visual Studio中。Visual Studio包含了VB、VC++、C#等编译环境。当然我们在使用VC++ 6.0的时候为了轻便,总是只单独安装VC++ 6.0。但自微软2002年发布Visual https://www.sodocs.net/doc/8c327631.html,以来,微软建立了在. NET框架上的代码托管机制,一个项目可以支持多种语言开发的组件,VC++同样被扩展为支持代码托管机制的开发环境,所以.NET Framework是必须的,也就不再有VC++的独立安装程序,不过可以在安装Visual Studio时只选择VC++进行安装。

VC++版本的选择:VS2010 因为VC++ 6.0以后的版本不再有独立的安装程序,所以鸡啄米在教程中将不会称VC++ 6. 0以后的版本为VC++ 7.0等等,而是用VC++所属的Visual Studio的版本名称代替,比如VS2003。 近些年VC++主要的版本包括:VC++ 6.0、VS2003、VS2005、VS2008和VS2010。 VC++ 6.0占用的系统资源比较少,打开工程、编译运行都比较快,所以赢得很多软件开发者的青睐。但因为它先于C++标准推出,所以对C++标准的支持不太好。举个例子: for(int i=0; i<5; i++) { a[i] = i; } for语句中声明的变量i,对于VC++ 6.0来说,出了for循环仍能使用。但很显然这与C++标准对于变量生存期的规定不符合。

Microsoft Visual C++ 2008 发布程序的部署问题

Microsoft Visual C++ 2008 发布程序的部署问题VS2008编译的程序在Windows2008环境上运行时经常出现如下问题: 应用程序事件日志如下: 上述两个问题都解决后则可能还出现如下问题:

注意:此时是调用dll出现问题了,而不是运行主程序出错。 主要问题是“找不到从属程序集Microsoft.VC90.MFC”, 解决办法如下:将整个“C:\Application\Microsoft Visual Studio 9.0\VC\ redist\x86\Microsoft.VC90.MFC”拷贝到exe文件所在目录下,如果exe程序所涉及调用的dll与该exe文件不在同一目录,那么须要在dll所在目录也拷贝一份。 详细描述如下: 这个问题有好多Blog和Forum已经讨论过了,但都不详尽,在具体的操作过程中还是有许多疑问。我摘录并整合了许多网络文章,希望能够做个最终了结。 一、VC2005和VC2008编译出来的程序如何发布 https://www.sodocs.net/doc/8c327631.html,/lf426/archive/2008/04/12/46885.aspx VC2005和VC2008编译出来的程序放到别人的电脑上为什么有可能无法运行呢?1:Microsoft Visual C++ 2008 Express Edition可以发布软件吗? 能! 很多人说,因为是Express版,不是Studio,所以只是用来练习语言的,不能发布软件——错! 除了没有MFC和ATL,基本上跟 .net 版本是一样的。发布出来的,是完整的可执行文件。

2:VC 2008 (2005) 发布出来的程序必须附带上他们特定的dll文件吗? 不一定。 如果目标系统是个经常升级的系统,微软已经为其打上了所需要的dll文件补丁了,不需要在软件包里面附加特定的dll文件。特别在Vista系统中,你更是不需要VC8和VC9的dll文件。但是在一些老版本的系统中,这些文件就是必须的。 3:VC2008和VC2005特定的dll文件是哪些? VC8: msvcm80.dll, msvcp80.dll, msvcr80.dll VC9: msvcm90.dll, msvcp90.dll, msvcr90.dll 4:如何部署文件? 首先,请选择release版本;在生成可执行文件(exe文件)的时候,会得到相应的部署文件(manifest文件)。比如,得到a.exe文件,就会同时生成 a.exe.intermediate.manifest文件。请将这2个文件放在同一文件夹下。然后,你需要VC8和VC9的部署文件:Microsoft.VC80.CRT.manifest和 Microsoft.VC90.CRT.manifest。请到你的VC安装目录下寻找,比如: C:\Program Files\Microsoft Visual Studio 9.0\VC\redist\x86\Microsoft.VC90.CRT 我这里也把2个部署文件直接贴出来,没装的直接用就是了: Microsoft.VC90.CRT.manifest

visual studio 2010使用教程

visual studio 2010使用教程 在我还在上学的时候,我选择了C++,最初我用VC6作为我的IDE,我看过很多本C++的教材,有的适合我,有的不适合我,其中有一本叫《Visual C++ 2005入门经典》的书帮了我不少的忙。因为通常的C++教材都只会介绍C++的语法什么的,很少会告诉我们如何去编译、运行,告诉我们什么是控制台程序,什么事Win程序,什么是GUI程序,C++能干什么,VC 和C++的区别是什么。现在有很多的朋友应该也有这些问题吧? 学C++用C++也有几年了,算不上熟悉,算是初窥门径吧,我想我应该做点什么帮助一下那些和曾经的我一样困惑的朋友,特别是学生朋友,告诉他们他们所困惑的问题的答案。记得我学C++的时候,没有人教,有的时候也走了不少弯路,甚至连调试也不会,也不知道可以通过看调用堆栈看调用次序,还自己慢慢的去搜索,好傻啊。 接下来我会做一个《Visual C++ 2010入门教程》系列,用来帮助初学者。刚开始学的时候是很痛苦的,这个我深有体会,特别是身边还没有人能够指导一二的。内容主要涵盖在Windows 下面使用C++进行开发的常见内容,Visual Studio 2010的使用,如何创建新项目,如何调试,如果配置项目属性等等,另外还会介绍Visual C++ 2010中新加如的一些内容,包括一些新的STL组建,一些新的语法支持等等。 由于本人水平有限,其中难免有错误,希望大家谅解,如果大家有发现问题还请务必及时指出来,否则误导了他人我就罪不容恕了。 注意,本教程非C++教程,不会教你C++,只会教你如何使用Visual C++ 2010去练习去学习其它C++教材上面的程序。因此建议大家认真的去看其他的C++教程,在使用Visual C++ 2010实践的时候如果遇到问题可以到这里来参考。推荐《C++ Primer》、《C++程序设计语言》《Visual C++ 2008入门经典》。 第一章关于Visual Studio、VC和C++的那些事 第二章安装、配置和首次使用VS2010 本章将帮助大家安装Visual C++ 2010,帮助大家做一些常见的配置,以及第一次使用它来写HelloWord程序。 安装 Visual C++ 2010是属于Visual Studio 2010的一部分,这个在前一章中已经讲解过,实际上Visual C++ 2010也有更多的子版本,正如Windows7有旗舰版、家庭高级版、家庭初

BarTender系统要求和兼容性

BarTender对系统和兼容性的要求 BarTender中文官网编辑发布 BarTender在标签、条形码、证卡和RFID 标记的设计和打印领域是全球首屈一指的软件。鉴于BarTender系统要求和兼容性,在安装BrTender10.1前,请先检查一下您的计算机系统,以免出现安装不起来或失败的情况。 支持的操作系统: Windows Server 2003(SP1 和更高版本)、Server 2008、Server 2008 R2、Server 2012、Server 2012 R2、XP(SP3 和更高版本)、Vista、Windows 7、Windows 8 和Windows 8.1。包括所有32 位和64 位(x64) 版本。 硬盘: 完整版的多语言BarTender应用程序套件需要多达 1.1 GB 的可用空间。若要支持打印机作业和事件消息的数据库记录功能(可选),则还需要额外的可用磁盘空间。 CPU:1 GHz 或更高 内存:512 MB 或更高 显示器分辨率:推荐使用1024 x 768 或更高

.NET Framework: 需要使用.NET Framework 3.0 (SP2)。BarTender 安装程序会自动安装所有必需的.NET Framework 组件。对于早期的64 位操作系统(XP、Windows Server 2003 和Windows Server 2008 pre-R2),安装程序需要连接到互联网并下载所需的.NET 组件。对于较新的64 位操作系统(Vista、Server 2008 R2、Windows 7、Server 2012 和Windows 8),都已随附了所需的组件。 可选数据库: 打印作业和事件消息的记录功能需要使用Microsoft SQL 2005 Express(随附于BarTender)或Microsoft SQL 2005(或更高版本)Server(须从数据库供应商购买)。 Web 浏览器: History Explorer(历史记录浏览器)和BarTender 帮助系统需要使用Microsoft Internet Explorer v6 或更高版本。 (注意:自动化版和企业自动化版需要使用TCP/IP 网络协议。)想要了解更多关于BarTender内容可参考BarTender教程服务中心。

Visual C2010简单教程

《Visual C++ 2010入门教程》系列一:关于Visual Studio、VC和C++的那些事 写在前面 在我还在上学的时候,我选择了C++,最初我用VC6作为我的IDE,我看过很多本 C++的教材,有的适合我,有的不适合我,其中有一本叫《Visual C++ 2005入门经典》的书帮了我不少的忙。因为通常的C++教材都只会介绍C++的语法什么的,很少会告诉我们如何去编译、运行,告诉我们什么是控制台程序,什么事Win程序,什么是GUI程序,C++能干什么,VC和C++的区别是什么。现在有很多的朋友应该也有这些问题吧? 学C++用C++也有几年了,算不上熟悉,算是初窥门径吧,我想我应该做点什么帮助一下那些和曾经的我一样困惑的朋友,特别是学生朋友,告诉他们他们所困惑的问题的答案。记得我学C++的时候,没有人教,有的时候也走了不少弯路,甚至连调试也不会,也不知道可以通过看调用堆栈看调用次序,还自己慢慢的去搜索,好傻啊。 接下来我会做一个《Visual C++ 2010入门教程》系列,用来帮助初学者。刚开始学的时候是很痛苦的,这个我深有体会,特别是身边还没有人能够指导一二的。内容主要涵盖在Windows下面使用C++进行开发的常见内容,Visual Studio 2010的使用,如何创建新项目,如何调试,如果配置项目属性等等,另外还会介绍Visual C++ 2010中新加如的一些内容,包括一些新的STL组建,一些新的语法支持等等。 由于本人水平有限,其中难免有错误,希望大家谅解,如果大家有发现问题还请务必及时指出来,否则误导了他人我就罪不容恕了。 注意,本教程非C++教程,不会教你C++,只会教你如何使用 Visual C++ 2010去练习去学习其它C++教材上面的程序。因此建议大家认真的去看其他的 C++教程,在使用Visual C++ 2010实践的时候如果遇到问题可以到这里来参考。推荐《C++ Primer》、《C++程序设计语言》《Visual C++ 2008入门经典》。 第一章:关于Visual Studio、VC和C++的那些事 首先,这三个东西有什么区别呢?VC和C++是相同的吗,有什么区别呢?我刚开始学C++的时候也有这样的问题,在这里我来替大家解释一下他们到底是什么。

VS2008 安装顺序

VS2008 安装顺序: 01) Visual Studio 2008 (VS2008TeamSuite-CHS-X1429243.iso) 02) Team Explorer 2008 (VS2008TFS-CHS-X1429252.iso 源代码管理客户端) 03) Visual Studio 2008 SP1 (VS2008SP1-CHSX1512981.iso SP1补丁) 04) VS2008SP1-KB974558-x86 (针对Team Foundation Server 2010 的前向兼容更新) 在VS 2008上安装了VS SP1后,再启动Team Explorer会出现下面的错误:"Could not load type 'Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemTypeDeniedOrNotExistEx ception' from assembly 'Microsoft.TeamFoundation.WorkItemTracking.Client, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'.” 。 答:造成这个错误一般是因为先安装了VS SP1再安装Team Explorer。解决很简单,再安装一遍VS SP1。 其他: VS2008九十天试用版本升级成正式版的办法: 升级正式版的方法是把Setupsetup.sdb文件中的[Product Key], 由T2CRQ-GDKBV-W7KJR-8C6CK-XMW3D修改为 PYHYP-WXB3B-B2CCM-V9DX9-VDY8T 或在控制面板中<添加/删除>,选VS2008,《更改》,升级。 因为九十天试用版本已经是RTM版本。所以改变序列号以后的升级或者安装,就会变成VS2008正式版。VS2008将不再有使用期限。

vs2008简单调试方法

VS2008简单调试方法 程序的错误通常可以分为若干类,语法错误,链接错误,逻辑错误。语法错误是比较容易查找并且修改的,而且编译给出的提示信息也比较完整,所以容易修改。链接错误来源很多,常常由于和系统、库函数等方面的原因出错,难以一言蔽之。最后是逻辑错误,也就是学生在实验课上碰到的难点,因为系统没有给出明确的提示,同学也只是知道运行错误,那么如何找到并修改运行错误就非常重要。下面以一个实例简单介绍一下调试过程,当然更加深入的还需自己多练习,学习。该文档所举例子为VS2008,同样适用于VS2005,VC++6。 1 一个实例 一个链表的程序,包括主程序Win32_C_Proj.cpp文件,Bucket.h和Bucket.cpp,其中Bucket用链表的方式实现一个容器。如下分别展示了main函数,bucket的插入元素函数和类的数据定义。

运行结果如下图 运行该程序,我们要的结果是1,2,因为是再第一位置插入1,第二位置插入2。而现在这个程序的输出结果却是2,1,和我们预想的不符合,说明程序设计过程中存在逻辑上的错误,也就是算法设计的问题。

2 初步发现问题 接下来第一步就是要发现问题。程序就那么几句,很明显,我们需要做的第一步就是确定错误的大至位置。 按F10运行程序,运行程序如下: 其中1位置是调试常有的工具按钮,2位置的箭头指示的是当前程序运行到的位置。工具按钮中八个按钮分别是: ●继续运行(F5,会运行到下一个断电停止,如果没有断点,则运行到结束)、 ●停止运行(不结束程序ctrl+shift+F5)、 ●结束运行(结束程序调试 shift+F5)、 ●重新启动、 ●显示下一个语句、 ●运行到函数内部(如果当前语句是一个函数)(F11) ●运行到同层的下一条语句(F10) ●跳出当前函数(shift+F11) 我们按F10,运行到bucket1.insertElem(2,2),这时候箭头指向该语句,表示该语句前面的语句都运行完成,但是该语句还未运行,显示的监视窗口如下:

VS2008经典教程与MFC编程示例

Visual Studio2008教程 Visual Studio2008发布后,有大量的https://www.sodocs.net/doc/8c327631.html,爱好者抛弃原来的Visual Studio2005平台转向现在流行的Visual Studio2008平台。但是Visual Studio2008有一个缺点就是需要比较高的硬件配置才能正常平稳的运行,所以到现在为止还有一部分人处于观望中,并没有转向这个平台。然而Visual Studio2008的一些新的功能以及优化性比先前版本有了很大的进步。本篇文章将主要介绍怎样利用https://www.sodocs.net/doc/8c327631.html,去编写一个计算器程序,程序虽然不复杂,但是其中所运用的知识和代码非常具有代表性,在平时开发中也是经常需要用到的。希望对https://www.sodocs.net/doc/8c327631.html,2008的初学者带来帮助。 打开 Visual Studio 2008。在文件 (File) 菜单上,单击新建项目 (New Project)。在新建项目 (New Project) 对话框的模板 (Templates) 窗格中,单击 Windows 应用程序(Windows Application)。单击确定 (OK)。 在Form1窗体中添加一个TextBox1控件和19个Button按钮,详细属性设置请查看以下的表格。 TextBox1 数据显 示框 Button1 0 Button2 . Button3 归零 Button4 无 Button5 = Button6 1 Button7 2 Button8 3 Button9 + Button10 - Button11 4 Button12 5 Button13 6 Button14 * Button15 / Button16 7 Button17 8 Button18 9 Button19 ON Button20 OFF 详细的界面请查看图1

Microsoft Visual Studio 2010 入门教程

《Visual C++ 2010入门教程》 写在前面 在我还在上学的时候,我选择了C++,最初我用VC6作为我的IDE,我看过很多本C++的教材,有的适合我,有的不适合我,其中有一本叫《Visual C++ 2005入门经典》的书帮了我不少的忙。因为通常的C++教材都只会介绍C++的语法什么的,很少会告诉我们如何去编译、运行,告诉我们什么是控制台程序,什么事Win程序,什么是GUI程序,C++能干什么,VC和C++的区别是什么。现在有很多的朋友应该也有这些问题吧? 学C++用C++也有几年了,算不上熟悉,算是初窥门径吧,我想我应该做点什么帮助一下那些和曾经的我一样困惑的朋友,特别是学生朋友,告诉他们他们所困惑的问题的答案。记得我学C++的时候,没有人教,有的时候也走了不少弯路,甚至连调试也不会,也不知道可以通过看调用堆栈看调用次序,还自己慢慢的去搜索,好傻啊。 接下来我会做一个《Visual C++ 2010入门教程》系列,用来帮助初学者。刚开始学的时候是很痛苦的,这个我深有体会,特别是身边还没有人能够指导一二的。内容主要涵盖在Windows下面使用C++进行开发的常见内容,Visual Studio 2010的使用,如何创建新项目,如何调试,如果配置项目属性等等,另外还会介绍Visual C++ 2010中新加如的一些内容,包括一些新的STL组建,一些新的语法支持等等。 由于本人水平有限,其中难免有错误,希望大家谅解,如果大家有发现问题还请务必及时指出来,否则误导了他人我就罪不容恕了。 注意,本教程非C++教程,不会教你C++,只会教你如何使用Visual C++ 2010去练习去学习其它C++教材上面的程序。因此建议大家认真的去看其他的C++教程,在使用Visual C++ 2010实践的时候如果遇到问题可以到这里来参考。推荐《C++ Primer》、《C++程序设计语言》《Visual C++ 2008入门经典》。 第一章:关于Visual Studio、VC和C++的那些事 首先,这三个东西有什么区别呢?VC和C++是相同的吗,有什么区别呢?我刚开始学C++的时候也有这样的问题,在这里我来替大家解释一下他们到底是什么。 Visual Studio,我们一般都简称为VS,VC全称是Visual C++,C++就不用解释了吧?Visual Studio其实是微软开发的一套工具集,它由各种各样的工具组成,这就好

visual c++ 2010入门教程

在我还在上学的时候,我选择了C++,最初我用VC6作为我的IDE,我看过很多本C ++的教材,有的适合我,有的不适合我,其中有一本叫《Visual C++ 2005入门经典》的书帮了我不少的忙。因为通常的C++教材都只会介绍C++的语法什么的,很少会告诉我们如何去编译、运行,告诉我们什么是控制台程序,什么事Win程序,什么是GUI程序,C++能干什么,VC和C++的区别是什么。现在有很多的朋友应该也有这些问题吧? 学C++用C++也有几年了,算不上熟悉,算是初窥门径吧,我想我应该做点什么帮助一下那些和曾经的我一样困惑的朋友,特别是学生朋友,告诉他们他们所困惑的问题的答案。记得我学C++的时候,没有人教,有的时候也走了不少弯路,甚至连调试也不会,也不知道可以通过看调用堆栈看调用次序,还自己慢慢的去搜索,好傻啊。 接下来我会做一个《Visual C++ 2010入门教程》系列,用来帮助初学者。刚开始学的时候是很痛苦的,这个我深有体会,特别是身边还没有人能够指导一二的。内容主要涵盖在Windows下面使用C++进行开发的常见内容,Visual Studio 2010的使用,如何创建新项目,如何调试,如果配置项目属性等等,另外还会介绍Visual C++ 2010中新加如的一些内容,包括一些新的STL组建,一些新的语法支持等等。 由于本人水平有限,其中难免有错误,希望大家谅解,如果大家有发现问题还请务必及时指出来,否则误导了他人我就罪不容恕了。 注意,本教程非C++教程,不会教你C++,只会教你如何使用Visual C++ 2010去练习去学习其它C++教材上面的程序。因此建议大家认真的去看其他的C++教程,在使用Visual C++ 2010实践的时候如果遇到问题可以到这里来参考。推荐《C++ Prim er》、《C++程序设计语言》《Visual C++ 2008入门经典》。 第一章关于Visual Studio、VC和C++的那些事 第二章安装、配置和首次使用VS2010 本章将帮助大家安装Visual C++ 2010,帮助大家做一些常见的配置,以及第一次使用它来写HelloWord程序。 安装

Visual Studio 2010系列之 与VS2008全面比较

Visual Studio 2010系列之与VS2008全面比较 在前面的一系列文章中,我们详细介绍了Visual Studio 2010 CTP的各种新特性,包括IDE的改进,语言层面(托管代码和非托管代码)的种种新特性等等。但是相信还是有很多朋友心存这样的疑问:任何新产品都会有很多新特性,为什么我要为了这些新特性而舍弃旧的Visual Studio 2008?(实际上她还很新,可以说才刚刚发布不久!)什么新特性是那“致命的诱惑”? 有道是“不怕不识货,就怕货比货”,下面我们就将Visual Studio 2010跟最新的Visual Studio 2008做一个重点的比较,让大家从比较中体会Visual Studio 2010的强大优势,让大家明白“10 is new 6”。 Vista才发布不久,微软就放出了下一代操作系统Windows 7的消息;Visual Studio 2008发布还不到一年,下一代开发工具Visual Studio 2010的CTP就出现了。刚刚发布就有下一代产品出现,从一个方面,这反映了技术的飞速发展,微软不得不不断推出新的产品以应对新技术的发展。但是,从另外一个侧面我们也可以解读出这样的信息:Vista以及基于Vista的Visual Studio 2008都不够成熟,都是一个“失败”的产品。如果说Vista是Windows 7的“Pre-Release”,相信大家都不会反对。同样的道理,从目前的情形来看,Visual Studio 2008更像是Vista平台上,Visual Studio 2010发布之前的一个过渡版本,同样扮演着Visual Studio 2010的“Pre-Release”的角色。 图1 一对难兄难弟:Vista + Visual Studio 2008 O(∩_∩)O 灵活高效的全新IDE 自从微软于1998年发布Visual Studio 6以来,Visual Studio的IDE已经成为软件开发工具的标杆,很多其他的开发工具,甚至是其他用途的应用程序,都在模仿Visual Studio的IDE。但是,就像我们前面讲过的那样,从Visual Studio 6到Visual Studio 2008,虽然IDE的功能越来越多,但是并没有什么革命性的变化,反倒因为功能太多带来了使用上的不便,导致开发效率低下。程序员们都在期盼一个全新的IDE的出现。 现在,程序员们的梦想在Visual Studio 2010中成为了现实。在Visual Studio 2010中,微软用全新的WPF技术重新打造了它的编辑器,借助WPF的强大功能,新的编辑器可以实现很多以前Visual Studio 2008的IDE根本无法想象的功能,比如代码的无级缩放,多窗口即时更新,文档地图,代码的自动产生等等,这些新的IDE特性都会极大地 提高程序员的开发效率。

vs2008单元测试入门

VS2008单元测试 调试是解决错误的过程,测试是发现软件缺陷的过程。每一个软件在交付使用时前都必须经过测试。软件测试是软件开发的重要组成部分,现在已经发展成专门的技术。 在消除了程序中的语法错误和运行错误后,程序仍然不能保证完全正确,程序员可以进行简单的单元测试,来确定基本功能是否完善,复杂的测试由专业人员进行。什么是单元测试呢? 单元测试是测试隔离的单元或模块,对各种方法分别使用不同的输入和执行参数来测试。单元测试的依据是详细设计描述,单元测试应对模块内所有重要的控制路径设计测试用例,以便发现模块内部的错误。单元测试多采用白盒测试技术,系统内多个模块可以并行地进行测试。VS2008将单元测试工具集成在IDE中,方便程序员使用。 1.新建一个类库项目,并为其中的类添加一个方法,方法任意 创建单元测试。在方法名上右击,然后单击“创建单元测试”选项,打开“创建单元测试”对话框

选择方法 为新建项目命名

然后在解决方案管理中就多了相应的Test Project和一个叫Solution Items的解决方案文件夹。 相关的文件作用如下: localtestrun.testrunconfig 本地测试运行配置文件; MySchoolPro.vsmdi 测试管理文件; AuthoringTest.txt 提供创建测试的说明,包括向项目增加其他测试的说明;XXXXTest.cs 包含测试对象对应的测试方法,以及测试初始化和测试清除的方法. 修改输入参数,及对比参数,还可以设置判定方法的条件

打开测试菜单-》窗口-》测试试图 在测试试图,右键运行要测试的方法,在测试结果窗口中查看测试结果

用VS2008调试C语言的几点启示

用VS2008调试C语言的几点启示 C语言是计算机编程的入门语言。C语言的调试工具众多,但是功能都不够强大,而且和主流的操作系统(win7、win8)兼容度很差。VS2008是基于微软.NET框架下的一种主流集成开发环境,对于C语言来说,VS2008是一款优秀的调试工具。本文探讨了用VS2008调试C语言的方法步骤,同时指出了VS2008同其他几种C语言调试工具的区别和优势。 标签:C语言调试工具VS2008 开发环境 引言 C语言作为面向过程语言的代表,一直是广大程序员学习编程的入门语言。C语言结构清晰易懂,简洁紧凑。C 语言数据类型丰富,表达方式灵活实用;在众多的高级语言中,C语言能够直接访问物理地址,对硬件进行操作;C语言生成代码质量高,程序执行的效率也比较高;最后,C语言的语法和C#、Java等主流高级语言语法十分类似,可以作为学习这些高级语言的先行课。因此,C语言越来越受到广大计算机编程爱好者的欢迎,成为计算机编程的必学入门语言。 一、C语言调试工具 C语言的调试工具众多,以往比较流行的有Turbo C,现在几乎找不到单独的C编译器了。大多数情况下,C编译器捆绑在C的一个高级版本C++中。比如Borland C++、Dev-C++、Visual C++等等。Linux下则是GCC。随着.net框架的出现,绝大多数微软系统下的编译器都用了Visual studio,目前比较成熟的是Visual studio2008(简称VS2008)。VS2008是一个高度集成化的工具,主要用C#语言在上面进行软件开发。VS集成开发环境同时可用于编译C++和C程序。但是在编译C程序的时候有些不同,本文下面将讨论如何用VS2008编译C程序,同时指出同其他编译器的区别。 二、用VS2008调试C语言源代码的步骤 用VS2008编写C语言代码: 下面以一段最基本的C语言代码为例,说明如何用VS2008编写C语言代码。代码如下: #include main() {

vs操作说明

第一章关于Visual Studio、VC和C++的那些事 首先,这三个东西有什么区别呢?VC和C++是相同的吗,有什么区别呢?我刚开始学C++的时候也有这样的问题,在这里我来替大家解释一下他们到底是什么。 Visual Studio,我们一般都简称为VS,VC全称是Visual C++,C++就不用解释了吧?Visual Studio其实是微软开发的一套工具集,它由各种各样的工具组成,这就好像Office 2007是由Word 2007、Excel 2007、Access 2007等等组成的一个道理。其中Visual C++就是Visual Studio的一个重要的组成部分。Visual Studio可以用于生成Web应用程序,也可以生成桌面应用程序,在Visual Studio下面,除了VC,还有Visual C#,Visual Basic,过去还有Visual J#,现在还有Visual F#等等组件工具,使用这些工具你可以使用C++语言、C#语言或者Basic语言(微软改进版)进行开发。这就好比桌上放着刀、叉、筷子,你可以用它们来吃饭,无论你用什么工具都可以,因为它们都是餐具的一种。 VC,全称是Visual C++,它只是一个工具而已。 C++是一门和C、Basic、C#、Java一个概念的东西,它是一门语言,这个概念就同汉语、英语、法语之间的关系一样。语言的可以不同,他们有的复杂有的精简,比如汉语,我个人认为这是这个星球上最复杂的语言;又比如电影《阿凡达》中外星人使用的语言,不过100都个单词而已。当然,语言并没有高低贵贱之分,而对语言掌握的好不好,说的好不好是有高下之别的。 一个语言都有哪些要素呢?语法就是其中一个重要的方面,比如你要对你所喜欢的人表达爱慕之情,那么你应该说“我爱你”,你不能说“你爱我”,因为这搞错了主谓宾关系,因此我们通常都需要按照一定的规矩和原则表达才会让别人正确理解我们真正的含义。在我们的汉语中有一些成语,它们通常都比较简单短小,但是却能表达非常强烈的感情,而且效果非常好。比如你想骂一个坏人“你实在是太变态了,这种事情都干得出来。”你可以这样说:“你也太禽兽不如了!”对于编程的语言来说,其实也是有成语的,在我看来,这就是库函数。通常我们在编程的时候都推荐选择库函数,因为它通常会比较快一些。 一直以来都有不少人混淆Visual C++和Visual Studio,其实最初Visual C++发布的时候还没有Visual Studio这个东西,Visual C++是一个独立的开发工具,与Visual Basic等并列,最后微软将它们整合在一起组成了Visual Studio。 Visual C++从发布起到现在已经有10个大版本了,我们这里介绍的Visual C++ 2010就是Visual C++ 10,简称VC10。上朔10多年,Visual C++ 6.0发布了,这个被称为史上最经典的VC,现在有很多企业还在用它,大量的教材基于这个版本的VC来写的。然而实际上VC6并没有想象中的那么美好,孱弱的IDE,不完善的STL等等让它越来越不适应时代的发展,同时由于后来的版本和它的差别越来越大,让很多习惯于VC6教材的人在新版本上无所适从。VC6走向历史的终结点其实是必然的,只在于时间问题罢了,况且大部分人都有追求最新的“嗜好”,所以这里也选择最新版的VC来做入门教程。 下面来介绍下这个VC版本和VS版本的对应关系:

系统要求

系统要求 与SIMATIC 产品的兼容性 WinCC flexible SMART V3 SP2 与以下 SIMATIC 产品并行兼容: l STEP 7 V5.5 SP4l STEP 7 V5.6 l STEP7 (TIA Portal) V13 SP2l STEP7 (TIA Portal) V14 SP1l WinCC (TIA Portal) V13 SP2l WinCC (TIA Portal) V14 SP1l WinCC (TIA Portal) V15l WinCC flexible 2008 SP3l WinCC flexible 2008 SP5l WinCC flexible 2008 SP4 CHINA 系统要求 WinCC flexible SMART V3 SP2 针对以下操作系统发布: l Windows 10 Pro Version 1709 (OS Build 16299) 64-bit l Windows 10 Enterprise Version 1709 (OS Build 16299) 64-bit l Windows 10 Enterprise 2016 LTSB (OS Build 14393) 64-bit l Windows 10 loT Enterprise 2015 LTSB (OS Build 10240) (for IPCIPG) 64-bit l Windows 7 Professional SP l Windows 7 Enterprise SP 为了有效使用 WinCC flexible SMART V3 SP2 工作,请务必遵循这些推荐值。 同时在工程 PC 上打开WinCC flexible SMART V3 SP2 的多个实例,可能会导致更高的硬盘要求。 系统要求Windows 7/Windows 10 操作系统RAM 最小 1.5 GB,推荐 2 GB 处理器 最低要求 Pentium IV 或同等 1.6 GHz 的处理器,推荐使用 Core 2 Duo 图形 XGA 1024 x 768WXGA 用于笔记本16 位色深硬盘 空闲存储空间 最小 3 GB 如果 WinCC flexible SMART 未安装在系统分区中,则所需存储空间的分配如下: l 大约2.6 GB 分配到系统分区l 大约400 MB 分配到安装分区 例如,确保留出足够的剩余硬盘空间用于页面文件。更多信息,请查阅Windows 文档。 PDF 显示 使用最新版本的 Adobe Reader Page 1 of 1 系统要求

相关主题