VS2010配置VTK5.10.1 Cmake2.8.12.2

VS2010配置VTK5.10.1  Cmake2.8.12.2
VS2010配置VTK5.10.1  Cmake2.8.12.2

VS2010配置VTK5.10.1Cmake2.8.12.2

2016年4月22日基于:VS2010 安装配置vtkVTK5.10.1 安装配置教程

VTK在VS2010下的安装方法

在win8.1,win10均成功,.net Framework是4.0。

希望大家按部就班,少走弯路,不要操之过急。

感谢原文作者的工作。

1.安装好VS2010

必须下载:

vtk-5.10.1.zip 源程序

vtkdata-5.10.1.zip 数据

cmake-2.8.12.2-win32-x86.zip

(vtk相关安装程序下载(官网):https://www.360docs.net/doc/b04380112.html,)

(cmake程序下载(官网):https://www.360docs.net/doc/b04380112.html,/HTML/Index.html)

2. 将vtk-5.10.1.zip 解压到D:\Program Files\VTK\VTKsourcecode,

将vtkdata-5.10.1.zip解压到D:\Program Files\VTK\VTKdata

新建一个文件夹D:\Program Files\VTK\VTKbin\

3. 解压cmake-2.8.12.2-win32-x86.zip,运行{解压目

录}\bin\cmake-gui.exe,

设置sourse code目录为D:\Program Files\VTK\ VTKsourcecode \,build目录为D:\Program Files\VTK\VTKbin\

按configure 按钮,选Visual Studio 10编译器。需要耐心等待,一般忽略其中的警告。

勾选Advanced再按configure,可以看到或者搜索到某项为:vtk_use_guisupport,选择它,再按configure,选vtk_use_mfc,再configure,configure的次数是无所谓的。

vtk_data_root: 目的是告诉cmake,vtk需要的数据都在哪里,我们的数据在D:Program Files\VTK\VTKdata

cmake_install_prefix:虽然网上说默认就好。但是我安装时出了问题。强烈建议该项的位置填VTK源程序和数据等文件的上一级文件的位置,即若vtk-5.10.1.zip 解压到D:\Program

Files\VTK\VTKsourcecode,则此处填D:\Program Files\VTK。

build_examples: 就是询问是否编译vtk中的例子,你在看这个教程,说明肯定是初次用VTK,建议选上。

build_shared_libs: 建议选On。如果设置为off,就只会生成lib 文件,用于开发肯定是够了。如果设置为on,将会多生成dll文件,这些dll需要拷到windows/system目录下。如果用静态库编程,即off 时,应用程序可以独立运行,尺寸也比较大,如果用动态库编程,即on时,应用程序必须找到动态库才能运行,但尺寸可以做得比较小。建议选On, 我试过选OFF,所谓的静态编译,但之后新建一个项目时,还是会出现找不到文件的问题。

vtk_use_parallel: 对于想用vtk做并行计算的朋友,要把这个选上,对于只想学学vtk的,保持默认off

所有项目会变成灰色后后可以点击Generate,完成时会提示Generating done,此时关闭cmake。

4. 用vc++2010打开D:\Program

Files\VTK\VTKbin\Utilities\MaterialLibrary目录下的MaterialLibrary.sln文件,右键点击All_Build选择重新生成。

5. 若build_shared_libs选择On,把D:\Program

Files\VTK\VTKbin\bin\Debug里生成的vtksys.dll文件拷到windows/system目录下。或者打开VS2010的属性管理器(视图->其他窗口->属性管理器),双击任意“https://www.360docs.net/doc/b04380112.html,er”,弹出属性页,在里面VC++目录的Library Directories 中将bin文件夹中的Debug包括进去(建议两种方法都用)。

6. 打开D:\Program Files\VTK\VTKbin目录下的VTK.sln,右键点击All_Build选择重新生成。

若build_shared_libs选择On,中途涉及MFC的示例会出错,生成成功两百多个,失败五六个。对应的解决办法为:

错误①Link错误:

a.在Solution Explorer中分别找到vtkDLG、vtkMDI、vtkSDI、vtkMFC这四个项目,右键—>Properties—>Configuration Properties—>Linker—>Input—>在Additional Dependencies中添加..\..\..\..\..\bin\Debug\vtkIO.lib

b.再找到Win32SampleMFC这个项目,与以上类似地在Additional Dependencies中添加..\..\..\..\bin\Debug\vtkIO.lib

这样,就为这些项目加入了vtkIO.lib库。

上述方法可能失效,可采用下面的方法

在vtkDLG、vtkMDI、vtkSDI、vtkMFC、Win32SampleMFC项目的CMaklist.txt中修改。打开CMakelist.txt,在

TARGET_LINK_LIBRARIES中添入vtkIO。

例如vtkSDI的CMakelist.txt中,TARGET_LINK_LIBRARIES (vtkSDIvtkMFC)应改为TARGET_LINK_LIBRARIES (vtkSDIvtkMFCvtkIO)。其他的项目修改类似。

错误②

This file requires _WIN32_WINNT to be #defined at least to 0x0403. Value 0x0501 or higher is recommended.

解决办法为:

找到五个工程:vtkDLG、vtkMDI、vtkSDI、Win32SampleMFC、vtkMFC a.打开前四个工程源文件中的stdAfx.h,

在四个工程下的项中的.h文件中可以找到。另外可以打开D:\Program Files\VTK\,利用文件搜索功能搜寻,找到后用VS2010打开修改(本人用后者,感觉较快)。

b.在vtkMFC工程下的< Resource Files>中,找到vtkMFCWindow.cpp 打开修改

4个stdafx.h如下修改

// Modify the following defines if you have to target a platform prior to the ones specified below. // Refer to MSDN for the latest info on corresponding values for different platforms.

#ifndef WINVER // Allow use of features specific to Windows 95 and Windows NT 4 or later.

#define WINVER 0x0601 // Change this to the appropriate value to target Windows 98 and Windows 2000 or later.

#endif

#ifndef _WIN32_WINNT // Allow use of features specific to Windows NT 4 or later.

#define _WIN32_WINNT 0x0601 // Change this to the appropriate value to target Windows 98 and Windows 2000 or later.

#endif

#if _MSC_VER >= 1300

#ifndef _WIN32_WINDOWS // Allow use of features specific to Windows 98 or later.

#define _WIN32_WINDOWS 0x0601 // Change this to the appropriate value to target Windows Me or later.

#endif

#endif

#ifndef _WIN32_IE // Allow use of features specific to IE 4.0 or later.

#define _WIN32_IE 0x0800 // Change this to the appropriate value to target IE 5.0 or later.

#endif

粗字对应的是win7版本

vtkMFCWindow.cpp中的部分代码:

// Allow use of features specific to Windows 95 and Windows NT 4 or later.

#ifndef WINVER

#define WINVER 0x0601

#endif

// Define _WIN32_WINNT and _WIN32_IE to avoid the following error with Visual

// Studio 2008 SP1:

// "C:\Program Files\Microsoft SDKs\Windows\v6.0A\include\sdkddkver.h(217) :

// fatal error C1189: #error : _WIN32_WINNT settings conflicts with _WIN32_IE

// setting"

#ifndef _WIN32_WINNT

#define _WIN32_WINNT 0x0601 // =_WIN32_WINNT_NT4

#endif

#ifndef _WIN32_IE

#define _WIN32_IE 0x0800 //=_WIN32_IE_IE60SP1

#endif

此时,应该没有问题了。右击vtkmfc项目,按“仅用于该项目” - “仅重新生成该项目”,这时\vtk\vtkbin\bin\Debug终于会有vtkMFC.lib 等文件生成。

再同理操作vtkDLG、vtkMDI、vtkSDI、Win32SampleMFC,最后一个可能失败,忽略。

若还是出现cannot find vtkMFC.lib则是由于cmake阶段未勾选vtk_use_mfc,关闭当前所有窗口。清空文件夹D:\Program

Files\VTK\VTKbin\的内容,回到第3步。

7.将D:\Program Files\VTK\VTKbin\bin \debug这个文件夹选择此中所有的DLL 后缀的文件全部复制到c:\windows\system32(调试时推荐),或者拷贝到VC项目可执行文件所在位置(即系,你自己的项目的调试目录,安装到其他机器时一并拷贝)。

8. 用VS2010打开D:\Program Files\VTK\VTKbin

\Examples\All\VTKExamples.sln,选择Cone项目,右键set as active proj ect(VC不熟的人一定要记得这个!),然后

选择调试->启动新实例,这时可以看到正确运行的程序了。

9. 新建项目Test(控制台应用程序空项目),增加Test.cpp文件,用Cone6.cxx的文件内容覆盖Test.cpp的内容。

#include "vtkConeSource.h"

#include "vtkPolyDataMapper.h"

#include "vtkRenderWindow.h"

#include "vtkCamera.h"

#include "vtkActor.h"

#include "vtkRenderer.h"

#include "vtkProperty.h"

int main()

{

vtkConeSource *cone = vtkConeSource::New();

cone->SetHeight( 3.0 );

cone->SetRadius( 1.0 );

cone->SetResolution( 10 );

vtkPolyDataMapper *coneMapper = vtkPolyDataMapper::New();

coneMapper->SetInputConnection( cone->GetOutputPort() );

vtkActor *coneActor = vtkActor::New();

coneActor->SetMapper( coneMapper );

vtkRenderer *ren1= vtkRenderer::New();

ren1->AddActor( coneActor );

ren1->SetBackground( 0.1, 0.2, 0.4 );

vtkRenderWindow *renWin = vtkRenderWindow::New();

renWin->AddRenderer( ren1 );

renWin->SetSize( 300, 300 );

int i;

for (i = 0; i < 360; ++i)

{

renWin->Render();

ren1->GetActiveCamera()->Azimuth( i );

}

cone->Delete();

coneMapper->Delete();

coneActor->Delete();

ren1->Delete();

renWin->Delete();

return 0;

}

9.1项目属性->配置属性->VC++目录->库目录:

D:\Program Files\VTK\VTKbin\bin\debug

若出现无法找到vtkRendering.dll等错误,则是由于该环境变量未配置正确。

9.2项目属性->配置属性->VC++目录->包含目录,拷入入下述内容: D:\Program Files\VTK\VTKbin;

D:\Program Files\VTK\VTKbin\bin;

D:\Program Files\VTK\VTKsourcecode\GenericFiltering;

D:\Program Files\VTK\VTKsourcecode\Common;

D:\Program Files\VTK\VTKsourcecode\IO;

D:\Program Files\VTK\VTKsourcecode\Filtering;

D:\Program Files\VTK\VTKsourcecode\Rendering;

D:\Program Files\VTK\VTKsourcecode\Graphics;

D:\Program Files\VTK\VTKsourcecode\V olumeRendering;

D:\Program Files\VTK\VTKsourcecode\Imaging;

D:\Program Files\VTK\VTKsourcecode\Hybrid;

D:\Program Files\VTK\VTKsourcecode\GUISupport;

D:\Program Files\VTK\VTKsourcecode\ Utilities;

D:\Program Files\VTK\VTKbin\ Utilities;

D:\Program Files\VTK\VTKsourcecode\Parallel;

D:\Program Files\VTK\VTKsourcecode\Widgets

( 注意:网上很多配置方法在Additional include directories(附加包含路径)没有添加D:\Program Files\VTK\VTKbin; D:\Program

Files\VTK\VTKbin\bin; 结果出现错误提示:无法打开包括文

件:“vtkConfigure.h”: No such file or directory)

9.3位于项目属性->链接器->输入->附加依赖项,拷入下述内容(下面有些lib文件已经被附加进去了,就不需要再添加进去):

opengl32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib vtkCommon.lib vtkDICOMParser.lib vtkexoIIc.lib vtkexpat.lib vtkFiltering.lib vtkfreetype.lib vtkftgl.lib vtkGenericFiltering.lib vtkGraphics.lib vtkHybrid.lib vtkImaging.lib vtkIO.lib vtkjpeg.lib vtkNetCDF.lib vtkpng.lib vtkRendering.lib vtksys.lib vtktiff.lib vtkV olumeRendering.lib vtkWidgets.lib vtkzlib.lib

(建议把D:\Program Files\VTK\VTKbin\bin \debug中所有的lib文件都填进去)

9.4调试,运行,可以看到运行窗口。

像Cannot open include file: 'vtkConeSource.h':这样的错误都

是上面三大步没走对或dll没拷到windows/system下造成的。要建立新项目,必须重新配置三大步,因为那三步都是Project setting 里的,新项目没有默认这些设置。

如果某个项目再提示缺什么lib或.h的话,再临时加上去就行了。

VS2010程序打包、发布详细流程

VS2010程序打包、发布详细流程 一、开发环境 1、操作系统:Windows 7 64位(本机测试,其他系统亦可,无特殊要求) 2、开发软件:Microsoft Visual Studio 2010 3、目标软件:MFC 二、详细流程 1、新建项目 运行VS2010,在VS2010中依次选择“新建项目→其他项目类型→Visual Studio Installer→安装项目”,输入项目名称和路径,如图1所示(此次分别设置项目名称为“MySetupMaker”,项目路径在E盘根目录),点击确定按钮,进入主界面,如图2所示。 图1 新建项目

图2 项目主界面 这时在VS2010中将有三个文件夹: 1)“应用程序文件夹”:表示要安装的应用程序需要添加的文件; 2)“用户的…程序?菜单”:表示应用程序安装完,用户的“开始菜单”中的显示的内容,一般在这个文件夹中,需要再创建一个文件用来存放:应用程序.exe和卸载程序.exe; 3)“用户桌面”:表示这个应用程序安装完,用户的桌面上的创建的.exe快捷方式。 2、添加文件 “应用程序文件夹”右键点击,出现下拉菜单,选择“添加 文件(I)…”,将需 要打包的文件全部添加到该目录下,如图3所示。

图3 添加文件到“应用程序文件夹” 此处添加的文件一般是已经编译过文件,一般是应用程序debug目录下的文件。如果需要添加其他文件,亦可以通过这种方式来添加。此外,如果debug 下面有子文件夹,则需要选择“添加 文件夹(F)”,首先在“应用程序文件夹”下创建一个文件夹,然后按照上述方法,添加文件到该文件夹即可,如图4所示。 图4 添加文件夹 备注: 1)此处添加的文件都会在软件安装完成后出现在软件的安装目录; 2)如果需要修改软件图标,则需要将软件的图标文件(.ico)也添加进来。 3、设置系统必备项 在“解决方案资源管理器”中,选择当前创建的项目名称(MySetupMaker),点击右键,选择“属性”,在弹出的“MySetupMaker属性页”中选择“系统必备(P)…”,如图5、图6、图7所示。

C#windows应用程序打包(VS2010+SQLServer2008) - SQL Server(mssql)数据库栏目 - 红黑联盟

C#windows应用程序打包(VS2010+SQLServer2008) 2014-07-09 0 个评论 来源:飘渺菌 收藏 我要投稿作者 : 飘渺菌 原文地址:https://www.360docs.net/doc/b04380112.html,/qingdujun/article/details/37563661 开发环境:VS2010+SQL Server 2008 操作系统:win7_32bit 旗舰版 开发语言:C# 项目名称:学生寄宿管理系统 下面开始介绍:如何给windows应用程序打包? 第一步: 打开VS2010,打开你要打包的项目,然后右击"解决方案",”添加“,"新建项目",弹出如下图所示界面: 点击”安装和部署“左边的三角形,选择下面的”Visual studio Installer“,再选择”安装项目“,同时将下面的命名改为”Setup“点击确定。 第二步: 点击解决方案里面生成的”Setup“,将属性中的ProtectName改为”学生寄宿系统 V1.0 “(你的

项目名字) 第三步: 右击解决方案里面的”Setup“,然后再选择”属性“。弹出属性页界面如下第二张图: 再点击里面的系统必备。 重要一点:勾选"从与我的应用程序相同的位置下载系统必备组件(D)",其实意思就是说你勾选后,生成安装项目时,在你安装项目的路径下,会有你在系统必备组件列表中勾选的组件.(系统自动完成,这一点还不错,不需要你自己去下载组件) 1)、Windows Installer 3.1(必选) 2)、.NET Framework 3.5 (可选)参考最后说明 3)、Crystal Report Basic for Visual Studio2008(x86,x64) (可选) 项目中用到了水晶报表就需要勾选此项

vs2010中ode配置、使用(open dynamics engine)

1、下载源文件 其官方网站是: https://www.360docs.net/doc/b04380112.html, 下载地址为:https://www.360docs.net/doc/b04380112.html,/projects/opende/ 最新版本为ode-0.12 下载后为一个rar加压文件,加压到C盘下ode-0.12文件夹下 2、通过premake生成示例程序 C:\ode-0.12\build 目录下有个premake.exe 只能通过cmd控制台运行,cmd控制台切换到build目录下。 输入命令输入“premake4 --with-demos --with-tests vs2008” 来生成 Microsoft Visual Studio 2008 的工程示例文件。 该示例文件可以直接运行,ode.sln 查看ode示例程序、运行。

3、自己新建ode 项目(使用ode) 新建win32项目,命名为ode18_3 4、ode相关头文件加入工程文件中头文件 属性->配置属性->C/C++ ->常规->附加包含目录: C:\ode-0.12\include C:\ode-0.12\ode\src C:\ode-0.12\ode\demo //运行demo程序引入demo程序使用的包,自己编程时可以不引用。 C:\ode-0.12 为ode 的解压目录,将目录中的文件包含到工程中。 2、引入ode源文件中加入#include 自己编码的时候引用。 3、引入ode 依赖的库文件ode_doubled.lib, drawstuffd.lib 属性->配置属性->链接器->输入->附加依赖项: C:\ode-0.12\lib\DebugDoubleDLL\ode_doubled.lib C:\ode-0.12\lib\DebugDoubleDLL\drawstuffd.lib user32.lib winmm.lib gdi32.lib opengl32.lib

ns3和openflow模块安装经验与问题详解

NS3网络仿真器安装详解 1. NS3安装预先设置Ubuntu环境,执行在终端以下命令 sudo apt-get install gcc g++ python sudo apt-get install mercurial sudo apt-get install bzr sudo apt-get install gdb valgrind sudo apt-get install gsl-bin libgsl0-dev libgsl0ldbl sudo apt-get install flex bison sudo apt-get install g++-3.4 gcc-3.4 sudo apt-get install tcpdump sudo apt-get install sqlite sqlite3 libsqlite3-dev sudo apt-get install libxml2 libxml2-dev sudo apt-get install libgtk2.0-0 libgtk2.0-dev sudo apt-get install vtun lxc sudo apt-get install uncrustify sudo apt-get install doxygen graphviz imagemagick sudo apt-get install texlive texlive-pdf texlive-latex-extra texlive-generic-extra texlive-generic-recommended sudo apt-get install texinfo dia texlive texlive-pdf texlive-latex-extra texlive-extra-utils texlive-generic-recommended sudo apt-get install python-pygraphviz python-kiwi python-pygoocanvas libgoocanvas-dev sudo apt-get install libboost-signal-dev libboost-filesystem-dev 2. 安装NS3 2.1下载NS3安装包并解压,官网上(https://www.360docs.net/doc/b04380112.html,)下载的 3.21版本格式为ns-allinone-3.21.tar.bz2在终端运行以下命令进行解压缩: bzip2 -d ns-allinone-3.21.tar.bz2 tar xvf ns-allinone-3.21.tar 2.2命令终端进入解压缩文件夹执行命令 ./build.py 2.3 进入ns- 3.21目录使用waf构建 ./waf -d optimized configure ./waf -d debug configure

VS2010发布、打包安装程序超全超详细

1、 在vs2010 选择“新建项目”→“其他项目类型”→“Visual Studio Installer→ 命名为:Setup1 。 这是在VS2010中将有三个文件夹, 1.“应用程序文件夹”表示要安装的应用程序需要添加的文件; 2.“用户的‘程序’菜单”表示:应用程序安装完,用户的“开始菜单”中的显示 的内容,一般在这个文件夹中,需要再创建一个文件用来存放:应用程序.exe和卸载程序.exe; 3.“用户桌面”表示:这个应用程序安装完,用户的桌面上的创建的.exe快捷方式。 9、应用程序文件夹中点右键添加文件:表示添加要打包的文件; 添加的文件一般是已经编译过应用程序的debug目录下的文件;

如果debug 下面有子文件夹则需要“添加文件夹”,例如:data 然后把对应的子文件里的内容添加到此文件夹中; 把需要创建程序快捷方式的图标也添加进来:后缀名为:ico 10、在创建的项目名称(Setup1)上点击右键:属性

选择系统必备: 然后选择.NET的版本,和Windows Installer3.1(可选项) 选择:“从与我应用程序相同的位置下载系统必备组件” 这样安装包就会打包.NET FrameWork ,在安装时不会从网上下载.NET FrameWork组件;但是安装包会比较大。

VS2010发布.NET2.0的版本,在创建安装程序时,需要设置启动条件:在项目名称(setup1)上,点击右键选择“视图” “启动条件”:

然后VS2010会创建如下文件: 在“启动条件”中, 点击“.NET Framework”在Version上面选择.NET Framework 2.0; 这样.NET Framework 2.0上创建的项目在安装时,就不会安装.NET3.5或其他版本, 也不会重启(解决.NET 2.0 创建的项目,安装.NET FrameWork3.5的问题)。 11、设置安装文件的目录(路径): 创建的项目名称(setup1)点击左键(不是右键),在属性中设置参数如下图:

vs2010下配置OpenCV

以下配置方法仅属于个人见解;若有什么不对的地方请指教啊。 在完成每一步骤后,记住点击?确定?,以确保你的设置成功。 在某些步骤中注意要在Debug 和Release 分别进行配置。 1.首先是下载VS2010并安装,这里不作赘述;(安装目录: D:\\Program Files\Microsoft Visual Studio 10.0) 2.下载并安装OpenCV,我的版本是2.1(安装目录为D:\Program Files\OpenCV2.1)注意将路径添加至Path中 3.下载并安装CMake,下载版本为Windows(Win32 Installer),安装目录为D:\Program Files\CMake 2.8 4.运行cmake-gui(D:\Program Files\CMake 2.8\bin),设置路径为OpenCV安装路径(本文档假定安装位置为:D:\Program Files\OpenCV2.1),并创建子目录D:\Program Files\OpenCV2.1\vs2010,用于存放编译结果。将数据填入指定文本框中

5.点击?Configure?,在弹出对话框中选中Visual Studio 10.0;单选框中选项选择程序默认的;然后点击Fnish;程序会自动完成 ?Configure Done?; 6.然后点击?configure?,接着点击?Generate?。程序完成?Generate Done?。 7.完成以上步骤后,将在D:\Program Files\OpenCV2.1|vs2010目录下生成OpenCV.sln的VC Solution File,接着请用vs2010打开OpenCV.sln,完成以下操作:

NS3安装

Compiling build/src/lte/bindings/https://www.360docs.net/doc/b04380112.html, 首先需要安装VMware player将Ubuntu安装上 Ubuntu汉化 Root 执行命令su passwd root Enter new UNIX password: (在这输入你的密码,也就是当前用户的密码)Retype new UNIX password: (确定你输入的密码) passwd: password updated successfully OK,到这里,你的root密码已经完成修改 执行su - root 输入上面刚才设定的密码之后,就root了 1.在ubuntu1 2.04中安装ns 3.17,首先要安装一下各种。 sudo apt-get install gcc g++ python sudo apt-get install gcc g++ python python-dev sudo apt-get install mercurial sudo apt-get install bzr sudo apt-get install gdb valgrind sudo apt-get install gsl-bin libgsl0-dev libgsl0ldbl sudo apt-get install flex bison libfl-dev sudo apt-get install g++ gcc sudo apt-get install tcpdump sudo apt-get install sqlite sqlite3 libsqlite3-dev sudo apt-get install libxml2 libxml2-dev sudo apt-get install libgtk2.0-0 libgtk2.0-dev sudo apt-get install vtun lxc sudo apt-get install uncrustify sudo apt-get install doxygen graphviz imagemagick sudo apt-get install texlive texlive-extra-utils texlive-latex-extra

VS2005快捷键大全

VS2005快捷键大全 字体: 小中大| 打印发表于: 2007-5-23 22:22 作者: nikefever 来源: IXPUB技术博客 快捷键功能 CTRL + SHIFT + B生成解决方案 CTRL + F7 生成编译 CTRL + O 打开文件 CTRL + SHIFT + O打开项目 CTRL + SHIFT + C显示类视图窗口 F4 显示属性窗口 SHIFT + F4显示项目属性窗口 CTRL + SHIFT + E显示资源视图 F12 转到定义 CTRL + F12转到声明 CTRL + ALT + J对象浏览 CTRL + ALT + F1帮助目录 CTRL + F1 动态帮助 F1 帮助 SHIFT + F1当前窗口帮助 CTRL + ALT + F3帮助-搜索 SHIFT + ALT + ENTER全屏显示 CTRL + -向后定位CTRL + SHIFT + -向前定位 CTRL + F4关闭文档窗口 CTRL + PAGE DOWN光标定位到窗口上方CTRL + PAGE UP光标定位到窗口下方CTRL + F6 CTRL + TAB下一个文档窗口 CTRL + SHIFT + F6 CTRL + SHIFT + TAB上一个文档窗口 ALT + F6下一个面板窗口 CTRL + K, CTRL + L取消remark CTRL + K, CTRL + C注释选择的代码 CTRL + K, CTRL + U取消对选择代码的注释CTRL + M, CTRL + O折叠代码定义 CTRL + M, CTRL + L展开代码定义 CTRL + DELETE删除至词尾 CTRL + BACKSPACE删除至词头 SHIFT + TAB取消制表符 CTRL + U转小写 CTRL + SHIFT + U转大写 CTRL + SHIFT + END选择至文档末尾CTRL + SHIFT + HOME选择至文档末尾开始SHIFT + END选择至行尾

打包过程vs2010(包含卸载功能、生成一个exe文件)

1、在vs2010 选择“新建项目”----“其他项目类型”----“Visual Studio Installerà“安装项目”: 命名为:Setup1 。 这是在VS2010中将有三个文件夹, 1.“应用程序文件夹”表示要安装的应用程序需要添加的文件; 2.“用户的…程序?菜单”表示:应用程序安装完,用户的“开始菜单”中的显示的内容,一般在这个文件夹中,需要再创建一个文件用来存放:应用程序.exe和卸载程序.exe; 3.“用户桌面”表示:这个应用程序安装完,用户的桌面上的创建的.exe快捷方式。 2、应用程序文件夹中点右键添加文件:表示添加要打包的文件;

添加的文件一般是已经编译过应用程序的debug目录下的文件; 如果debug 下面有子文件夹则需要“添加文件夹”,例如:data

然后把对应的子文件里的内容添加到此文件夹中; 把需要创建程序快捷方式的图标也添加进来:后缀名为:ico 3、在创建的项目名称(Setup1)上点击右键:属性

选择系统必备 然后选择.NET的版本,和Windows Installer3.1(可选项)

选择:“从与我应用程序相同的位置下载系统必备组件” 这样安装包就会打包.NET FrameWork ,在安装时不会从网上下载.NET FrameWork 组件;但是安装包会比较大。 VS2010发布.NET2.0的版本,在创建安装程序时,需要设置启动条件:在项目名称(setup1)上,点击右键选择“视图”à“启动条件”:

然后VS2010会创建如下文件: 在“启动条件”中, 点击“.NET Framework”在Version上面选择.NET Framework 2.0;

vs2010自动补齐双引号

让vs2010自动完成双引号 广大码奴们,敲码时遇到需要输入双引号,方括号,圆括号是不是很烦躁, 如果有一种只需要输入一个左边括号,就可以自动补齐另一边括号,并且可以自 动将光标定位到括号中间,输入完毕后又可以方便的跳出括号的工具,那效率会 不会高很多。 百度了很久,都没有什么好的解决方案,不是装VA就是resharper插件, 但是也只是可以自动补齐和定位而已,想要跳出仍然需要利用键盘上的右方向 键,手部移动幅度很大有木有,完全打乱了敲码的节奏,破坏了忧郁的气质,好 吧,我之前一直都用鼠标来的。。。 找不到现成的方法,只能自己动手丰衣足食了。突然发现 virtual studio是支持宏操作的,于是楼主灵光一闪,想到了利用宏来自动实现上述功能的方法,不多说,直接上图。 1.工具-宏-记录TemporaryMacro

2. 接下来就不用我多说了,和office中的一样,录制宏,比如你可以在文本编辑窗口输入“(”,“)”,“<—”(方向键),然后停止录制宏。这样我们就有了可以自动完成双引号并定位到中间位置的快捷操作,依次可以得到自动完成圆括号,方括号等等的宏。这是我自己录制的7个宏。 3. 接下来我们还要把这些宏和具体的快捷键绑定起来,这样我们只要在键盘上敲打快捷键就可以自动完成

在“显示命令包含”中输入“宏”,会自动显示你刚刚录制的所有宏,选择一个,设置快捷键,注意设置完要点“分配”

这样一个宏就设置完了,接下来把你录制的所有宏都设置一个你认为方便你操作的快捷键即可。 4.接下来和大家分享一下我的设计方案。我选取了H,J,K,L,N,M,Alt,空格这8个元素,她们在键盘上的位置都在右手可以控制的范围内,非常灵活便捷,不想录制的朋友也可以直接粘贴我设置好的宏代码。 Alt+H : 删除,即backspace Sub删除() DTE.ActiveDocument.Selection.DeleteLeft() End Sub Alt+J:输入双引号并定位到中间 Sub打出双引号() DTE.ActiveDocument.Selection.Text = """""" DTE.ActiveDocument.Selection.CharLeft() End Sub Alt+K:输入圆括号并定位到中间 Sub打出括号() DTE.ActiveDocument.Selection.Text = "()" DTE.ActiveDocument.Selection.CharLeft() End Sub Alt+L:输入方括号并定位到中间

vs打包方案

.net打包/C#WinFrom程序打包/图解.net打包/.net安装部署图解/VS2008项目的安装与部署图解 一、应用程序文件夹操作 1、新建一个安装项目,起名“测试打包” 这里要记住路径了,不然,打完了找不着安装包在哪里,可就说不过去了,呵呵! 2、这里就会出现三个文件夹,不用多说一看就明白意思,点“应用程序文件夹-->添加-->文件夹

这里的作用就是好管理,重启一下名字,这里我就叫它“测试打包系统” 3、在“测试打包系统”文件夹上右键-->添加-->项目输出 下一步:添加主输出 一般这个就够了,当然你还有别的资源的话就要添加上去了! 4、接下来在“应用程序文件夹”下依些建几个文件夹,我建了3个

Images里我放的是图片,2个ICO和1个BMP,后面会用到! Unit放置卸载的文件,这里你记住有这么回事就行了,下面专门会讲这个文件是怎么来的! 最下面的一个就不用多说了,上面操作过了,放了一个主输出文件! 到这里一个简单的打包项目已完成了,呵呵,右键生成一下,在项目目录中找着安装文件就可以运行安装的用了! 但是这样的安装包,你安装完一不小心还找不着安装在哪里去了,呵,因为这样只有在安装文件夹里有东东,而我们所熟悉的开始菜单和桌面上没东西啊!不方便,那就给加上去吧! 二、开始菜单-->程序-->里添加内容操作 1、点“用户的“程序”菜单”,新建一个文件夹!步骤和前面一样,不细说!

我起名叫“测试打包系统” 2、在中间的桌口中(上图的名称下面部分位置啊),右键-->创建新的快捷方式,出现下面的界面 选择“应用程序文件夹”里面的,也就是我们添加的主输出文件! 3、更改新添加"快捷方式的属性" 看到了吧,这里我更改了一下name和Icon,更改Icon,看到上图中的浏览了吧,打着前面Images下面的ICO文件就可以了!

VS2010下配置Openmesh+openGL

VS2010下配置Openmesh+openGL 一.配置OpenGL 1首先,下载glut.rar文件,这个网上搜一下都能够找到,亦可以从opengl官网下载,https://www.360docs.net/doc/b04380112.html,/resources/libraries/glut/glutdlls37beta.zip。 2.解压后可以得到5个文件:glut.h、glut.dll、glut.lib、glut32.lib、glut32.dll。然后, ○1把glut.h文件放在C:\Program Files\Microsoft SDKs\Windows\v7.0A\Include\gl文件夹下面; ○2把glut.lib、glut32.lib两个文件放在静态函数库所在的文件夹中,也就是说这两个文件要放到自己的VS2010安装目录下的VC\lib文件中。我的vs2010安装目录是E:\vs2010\VC\lib; ○3最后把glut.dll、glut32.dll文件放在C:\windows\system32文件夹下面. 三步做完openGL的文件配置就完成了。 二.配置Openmesh 1. 在网站上下载了 OpenMesh- 2.0-RC4(这个谷歌下,网上很多,最好下载最新版本的)。 2.安装openmesh后,openmesh安装目录下的lib文件夹里面会有两个库文件 OpenMeshCore.lib 和OpenMeshTools.lib。 3.为了不设置依赖的编译目录,将这两个文件放到VS的库文件里E:\VS2010\VC\lib中。 4.打开VS2010,新建一个工程,命名如test1,然后设置test1工程的依赖项,工程属性->连接器->输入-》附加依赖项-》加入如上两个lib就可以了。在这里要说明一下,如果从VS2010的工具—属性里面设置附加依赖属性是不行的,所以我们要自己建一个工程,然后设置这个工程的附加依赖属性,设置的地方有两处,如下: ○1项目—test1属性—VC++目录 主要设置的是包含目录和库目录,文件路径设置如图,lib和include文件夹都在自己的openmesh安装目录下。 ○2项目—test1属性—链接器—输入 将openmesh安装目录下lib文件中的这两个文件(如图)的名字复制粘贴到这里来就可以了,至此openmesh文件配置完成。

如何使用VS2010调试程序

如何使用VS2010调试程序 隋清宇 2010.11.7 在之前的课程中,很多同学向我们反映,不知道如何使用VS2010调试自己的程序。还有一些同学交上来的程序,带了stdafx等VS自动生成的库文件。所以,我有必要在这里简单地讲一下如何使用VS2010编写及调试自己的代码。 关于VS2010如何安装的问题,想必同学们已经都很清楚了,这里就不再赘述。如果有使用Code::Blocks或DevC++等IDE的同学,具体操作和VS2010其实相差并不大,但是在选项或菜单的名称以及快捷键上会有所不同,我在文章中会尽量提到各个操作的英文名称,可以自己参考着尝试摸索一下。 文章中有下划线的词语都是截图中提到的选项,方便同学们对照。 一、建立工程 首先,我们需要在VS2010中建立一个工程(Project),这样才可以对我们的代码进行编译(Compile)、调试(Debug)、生成(Build)等操作。 先在文件菜单选择新建,然后选择项目。 在打开的对话框中,于左侧选择Visual C++,右侧选择空项目(Empty Project)。然后在下面输入想要储存这个工程的位置和给这个工程起的名称。可能你可以选择的项目和我不一样,这些都无妨,只要可以找到Visual C++和空项目就可以了。 需要注意的是,因为我们没有必要为一次作业的代码建立一个解决方案,所以一般情况下,为解决方案创建目录的复选框不勾选就可以了。 在例子中,我选择的存储位置为D:\example\,工程名为myProg1。当工程创建完成的时候,你会发现D:\example\下会多了一个文件夹D:\example\myProg1\(请注意工程名和存储位置的关系),而你这个工程的所有文件都在那个文件夹下。 另外,有同学在创建工程的时候选择了Win32控制台应用程序,这样会导致VS2010生成一些对于我们没有任何用处的代码和文件(比如上文中提到的stdafx),强烈不建议选择此项(但是Code::Blocks需要选择Console Application项建立工程)。

逆变器操作说明和故障处理

一逆变器原理介绍 1.1逆变(invertion):把直流电转变成交流电的过程。 逆变电路是把直流电逆变成交流电的电路。当交流侧和电网连结时,为有源逆变电路。变流电路的交流侧不与电网联接,而直接接到负载,即把直流电逆变为某一频率或可调频率的交流电供给负载,称为无源逆变。 逆变桥式回路把直流电压等价地转换成常用频率的交流电压。逆变器主要由晶体管等开关元件构成,通过有规则地让开关元件重复开-关(ON-OFF),使直流输入变成交流输出。当然,这样单纯地由开和关回路产生的逆变器输出波形并不实用。一般需要采用高频脉宽调制(SPWM),使靠近正弦波两端的电压宽度变狭,正弦波中央的电压宽度变宽,并在半周期内始终让开关元件按一定频率朝一方向动作,这样形成一个脉冲波列(拟正弦波)。然后让脉冲波通过简单的滤波器形成正弦波。 1.2 IGBT的结构和工作原理 1.2.1 IGBT的结构 IGBT是三端器件,具有栅极G、集电极C和发射极E。IGBT由N沟道VDMOSFET 与双极型晶体管组合而成的,VDMOSFET多一层P+注入区,实现对漂移区电导率进行调制,使得IGBT具有很强的通流能力。图1-1为IGBT等效原理图及符号表示 图1-1 IGBT等效原理图及符号表示 1.2.2IGBT的工作原理 IGBT的驱动原理与电力MOSFET基本相同,是一种场控器件。 其开通和关断是由栅极和发射极间的电压U GE决定的。

当U GE为正且大于开启电压U GE(th)时,MOSFET内形成沟道,并为晶体管提供基极电流进而使IGBT导通。 当栅极与发射极间施加反向电压或不加信号时,MOSFET内的沟道消失,晶体管的基极电流被切断,使得IGBT关断。 电导调制效应使得电阻R N减小,这样高耐压的IGBT也具有很小的通态压降。 1.3逆变电路介绍 1.3.1逆变产生的条件为 1,要有直流电动势,其极性须和晶闸管的导通方向一致,其值应大于变流器直流侧的平均电压。 2要求晶闸管的控制角α>π/2,使U d为负值。 两者必须同时具备才能实现有源逆变。 逆变运行时,一旦发生换相失败,外接的直流电源就会通过晶闸管电路形成短路,或者使变流器的输出平均电压和直流电动势变成顺向串联,由于逆变电路的内阻很小,形成很大的短路电流,这种情况称为逆变失败,或称为逆变颠覆。 逆变失败的原因 1触发电路工作不可靠,不能适时、准确地给各晶闸管分配脉冲,如脉冲丢失、脉冲延时等,致使晶闸管不能正常换相。 2晶闸管发生故障,该断时不断,或该通时不通。 3交流电源缺相或突然消失。 4换相的裕量角不足,引起换相失败 为了防止逆变失败,不仅逆变角β不能等于零,而且不能太小,必须限制在某一允许的最小角度内。 1.3.2逆变电路基本的工作原理 图1-2单相逆变电路原理图

VS2010最全的快捷键列表

VS2010版快捷键 Ctrl+E,D ----格式化全部代码 Ctrl+E,F ----格式化选中的代码CTRL + SHIFT + B生成解决方案CTRL + F7 生成编译 CTRL + O 打开文件 CTRL + SHIFT + O打开项目CTRL + SHIFT + C显示类视图窗口F4 显示属性窗口 SHIFT + F4显示项目属性窗口CTRL + SHIFT + E显示资源视图F12 转到定义 CTRL + F12转到声明 CTRL + ALT + J对象浏览 CTRL + ALT + F1帮助目录CTRL + F1 动态帮助 F1 帮助 SHIFT + F1当前窗口帮助 CTRL + ALT + F3帮助-搜索

SHIFT + ALT + ENTER全屏显示 CTRL + -向后定位 CTRL + SHIFT + -向前定位 CTRL + F4关闭文档窗口 CTRL + PAGE DOWN光标定位到窗口上方CTRL + PAGE UP光标定位到窗口下方CTRL + F6 CTRL + TAB下一个文档窗口 CTRL + SHIFT + F6 CTRL + SHIFT + TAB上一个文档窗口ALT + F6下一个面板窗口 CTRL + K, CTRL + L取消remark CTRL + M, CTRL + O折叠代码定义CTRL + M, CTRL + L展开代码定义CTRL + DELETE删除至词尾 CTRL + BACKSPACE删除至词头 SHIFT + TAB取消制表符 CTRL + U转小写

CTRL + SHIFT + U转大写 CTRL + SHIFT + END选择至文档末尾 CTRL + SHIFT + HOME选择至文档末尾开始SHIFT + END选择至行尾 SHIFT + HOME选择至行开始处 SHIFT + ALT + END垂直选择到最后尾SHIFT + ALT + HOME垂直选择到最前面CTRL + SHIFT + PAGE UP选择至本页前面CTRL + SHIFT + PAGE DOWN选择至本页后面CTRL + END文档定位到最后 CTRL + HOME文档定位到最前 CTRL + A全选 CTRL + W选择当前单词 CTRL + G转到… CTRL + K, CTRL + P上一个标签 CTRL + K, CTRL + N下一个标签 ALT + F10调试-ApplyCodeChanges CTRL + ALT+ Break停止调试

vs2010发布、打包安装程序(超全超详细)

1、在vs2010 选择“新建项目”→“其他项目类型”→“Visual Studio Installer→ “安装项目”: 命名为:Setup1 。 这是在VS2010中将有三个文件夹, 1.“应用程序文件夹”表示要安装的应用程序需要添加的文件; 2.“用户的‘程序’菜单”表示:应用程序安装完,用户的“开始菜单”中的显示 的内容,一般在这个文件夹中,需要再创建一个文件用来存放:应用程序.exe和卸载程序.exe; 3.“用户桌面”表示:这个应用程序安装完,用户的桌面上的创建的.exe快捷方式。 2、应用程序文件夹中点右键添加文件:表示添加要打包的文件;

添加的文件一般是已经编译过应用程序的debug目录下的文件; 如果debug 下面有子文件夹则需要“添加文件夹”,例如:data 然后把对应的子文件里的内容添加到此文件夹中;

把需要创建程序快捷方式的图标也添加进来:后缀名为:ico 3、在创建的项目名称(Setup1)上点击右键:属性 选择系统必备:

然后选择.NET的版本,和Windows Installer3.1(可选项) 选择:“从与我应用程序相同的位置下载系统必备组件” 这样安装包就会打包.NET FrameWork ,在安装时不会从网上下载.NET FrameWork组件;但是安装包会比较大。

VS2010发布.NET2.0的版本,在创建安装程序时,需要设置启动条件:在项目名称(setup1)上,点击右键选择“视图”“启动条件”:

然后VS2010会创建如下文件: 在“启动条件”中, 点击“.NET Framework”在Version上面选择.NET Framework 2.0;

vs2010下配置pthread

在VS2010下,用C语言编写pthread多线程程序的配置 1、从https://www.360docs.net/doc/b04380112.html,/pthreads-win32/下载pthread 的windows安装包,我下的是pthread-w32-2-9-1-release.zip,其他版本也可以。解压到pthread-w32-2-9-1-release。 2、打开vs2010,项目->属性->配置属性->VC++目录,包含目录里添加inlude路径,如下图所示,如果刚下载的压缩包放在D盘,则在包含目录那一栏添加:D:\pthread-w32-2-9-1-release\Pre-built.2\inc lude;在库目录那一栏添加:D:\pthrea-w32-2-9-1-release\Pre-built2\lib 3、在链接器—>输入,附加依赖项一栏添加 pthreadVC2.lib;pthreadVCE2.lib;pthreadVSE2.lib;如下图所示。所有设置完成后点确定。 4、打开pthread-w32-2-9-1-release\Pre-built.2\lib\X86,将里面三个*.lib文件复制到你所建立的工程目录中去,这样就设置好了,大功告成。 如下一个简单的程序实例。 #include #include #include #define NUM_THREADS 4

typedef struct{ int threadId; }threadParm_t; void *threadFunc(void *parm) { threadParm_t *p=(threadParm_t *)parm; fprintf(stdout,"Hello world from thread%d\n",p->threadId); pthread_exit((void *)&(p->threadId)); return 0; } int main(int argc,char *argv[]) { int i; int *res; res=(int *)malloc(sizeof(int)); pthread_t thread[NUM_THREADS]; threadParm_t threadParm[NUM_THREADS]; for(i=0;i

Tomcat服务器的安全配置

Tomcat 服务器的安全配置办法 tomcat 是一个开源Web 服务器 ,基于Tomcat 的Web 运行效率高,可以在一般的硬件平台上流畅运行,因此,颇受Web 站长的青睐。不过, 在默认配置下其存在一定的 安全 隐患,可被恶意攻击。另外,由于其功能比较单纯需要我们进一步地进行设置。本机将从 安全 和功 tomcat 是一个开源Web 服务器,基于Tomcat 的Web 运行效率高,可以在一般的硬件平台上流畅运行,因此,颇受Web 站长的青睐。不过, 在默认配置下其存在一定的安全隐患,可被恶意攻击。另外,由于其功能比较单纯需要我们进一步地进行设置。本机将从安全和功能两方面谈谈基于Tomcat 的 Web 服务器的部署,希望对大家有所帮助。 环境描述 OS :Windows Server 2003 IP :192.168.1.12 Tomcat :6.0.18 1、安全测试 (1).登录后台 在Windows Server 2003上部署Tomcat ,一切保持默认。然后登录Tomcat 后台,其默认的后台地址为: http://192.168.1.12:8080/manager/html 。在浏览器中输入该地址,回车后弹出登录对话框,输入默认的用户名admin ,默认的密码为空,成功登录后台。(图 1)

(2).获得Webshell 在Tomcat的后台有个WAR file to deploy模块,通过其可以上传WAR文件。Tomcat可以解析WAR文件,能够将其解压并生成web文件。我们将一个jsp格式的webshell 用WinRar打包然后将其后缀改名为WAR(本例为gslw.war),这样;一个WAR包就生成了。最后将其上传到服务器,可以看到在Tomcat的后台中多了一个名为/gslw的目录,点击该目录打开该目录jsp木马就运行了,这样就获得了一个Webshell。(图2)

VS2010常用快捷键

1. 强迫智能感知:Ctrl+J; 2.强迫智能感知显示参数信息:Ctrl-Shift-空格; 3.格式化整个块:Ctrl+K+F 4. 检查括号匹配(在左右括号间切换): Ctrl +] 5. 选中从光标起到行首(尾)间的代码: Shift + Home(End) 6. 在方法定义和调用之点切换:Ctrl+Shift+7(8) 7. 设置断点:F9 8. 使用Tab增加缩进,Shift+Tab减少缩进 9. 格式化整篇代码:Ctrl+K, F 10. 设置书签:Ctrl+B+T,跳转书签:Ctrl+B+N 11、编辑区视图最大化:Alt+Shift+Enter; 12、注释选定块:Control+K,Control+C 13、取消注释块:Control+K,Control+U 14、查找和替换:Control+F\Control+H 15、转跳到定义,很有用的快捷键:F12 16、查找所有引用:Shift+F12 17、删除整行:Control+L 18、撤销:Control+Z 19、反撤销:Control+Y(如果是mac用户+fn) 20、折叠代码定义:CTRL + M, CTRL + O 21、展开代码定义:CTRL + M, CTRL + L 22、查看上次阅读处\反上次查看处:Control+"-"\Control+Shift+"-" 23、CTRL + G转到… 24、CTRL + U转小写 25、CTRL + SHIFT + U转大写

vs2010快捷键大全 VS2010版快捷键 Ctrl+E,D ----格式化全部代码 Ctrl+E,F ----格式化选中的代码CTRL + SHIFT + B生成解决方案CTRL + F7生成编译 CTRL + O打开文件 CTRL + SHIFT + O打开项目CTRL + SHIFT + C显示类视图窗口F4显示属性窗口 SHIFT + F4显示项目属性窗口CTRL + SHIFT + E显示资源视图F12转到定义 CTRL + F12转到声明 CTRL + ALT + J对象浏览

vs2010发布、打包安装程序详解

这是我在网上搜到的,加以自己的理解和对一些不明白的地方做了一些更新说明。 1、在vs2010 选择“新建项目”→“其他项目类型”→“Visual Studio Installer”→ “安装项目”: 命名为:Setup1 ,选择好位置后点确定。这时在VS2010中将有三个文件夹,如图: a.“应用程序文件夹”:表示要安装的应用程序需要添加的文件; b.“用户的‘程序’菜单”:表示应用程序安装完,用户的“开始菜单”中的显示的 内容,一般在这个文件夹中,需要再创建一个文件用来存放:应用程序.exe和卸载程序.exe; c.“用户桌面”表示:这个应用程序安装完,用户的桌面上的创建的.exe快捷方式。 2、应用程序文件夹中点右键,添加文件:表示添加要打包的文件;

添加的文件一般是已经编译过应用程序的debug目录下的文件(主要为.exe文件,其他文件可选); 如果有所需要的动态库也加载进来: 如果还要添加子文件夹则需要“添加文件夹” 然后把对应的子文件里的内容添加到此文件夹中; 把需要创建程序快捷方式的图标也添加进来(在res文件夹下),后缀名为:ico

3、在创建的项目名称(Setup1)上点击右键 属性,选择系统必备:

如果在项目名称(Setup1)的“检测到的依赖项”里检测到所添加的程序文件有.NET 依赖,如图:则选择所需的.NET的版本和Windows Installer3.1(可选项),如果没有则不用选。 选择:“从与我应用程序相同的位置下载系统必备组件”,这样安装包就会打包.NET FrameWork ,在安装时不会从网上下载.NET FrameWork组件;但是安装包会比较大。 在创建安装程序时,需要设置启动条件(如果有.NET依赖):在项目名称(setup1)上,点击右键选择“视图” “启动条件”:

相关文档
最新文档