使用目录创建VC2003/VC2005工程

VC6项目维护指南:寻找与集成Windows XP/2003 Platform SDK 在软件开发和系统维护中,软件开发工具包(SDK)是连接应用程序与操作系统API的关键桥梁,它提供了编译所需的头文件和库文件。其核心原理在于确保编译器、SDK与目标运行环境三者间的ABI(应用程序二进制接口)兼容,包括数据结构内存布局、函数调用约定等严格匹配。对于使用Visual C++ 6.0(VC6)维护遗留项目的工程师而言,这一兼容性尤为重要。特定版本的Platform SDK,如Windows XP SP2和Windows Server 2003 R2(February 2003 Edition)SD 阅读详情

在项目中,想使用某个目录来创建一个工程,以方便调试,但发现Visual Studio 2003不支持创建工程来自目录,得让你自己一个一个的添加过滤目录,添加文件列表,很不方便。特写了此脚本方便创建,考虑有可能其他网友或有需要,特贴上以共享

 

--CreateProjectByPath.vbs

Dim fso, ProjectName, ProjectPath, FileFilter, SkipPathList, result
Dim totalfiles, curfileinx, totalfolders, curfolderinx
totalfiles = 0
curfileinx = 0
totalfolders = 1
curfolderinx = 1
if (wscript.arguments.count >= 1 and wscript.arguments.count <= 4) then
   ProjectName = wscript.arguments(0)
   if (wscript.arguments.count = 1) then
      ProjectPath = """."""
   FileFilter = ".*/.(cpp|c|cxx|hpp|h|def|odl|idl|hpj|bat|asm|asmx)"
   SkipPathList = """"
   else if (wscript.arguments.count = 2) then
      ProjectPath = wscript.arguments(1)
   FileFilter = ".*/.(cpp|c|cxx|hpp|h|def|odl|idl|hpj|bat|asm|asmx)"
   SkipPathList = """"
   else if (wscript.arguments.count = 3) then
      ProjectPath = wscript.arguments(1)
      FileFilter = wscript.arguments(2)
   SkipPathList = """"
   else if (wscript.arguments.count = 4) then
      ProjectPath = wscript.arguments(1)
      FileFilter = wscript.arguments(2)
   SkipPathList = wscript.arguments(3)
   end if
   end if
   end if
   end if
   CreateProjectByPath ProjectName, ProjectPath, FileFilter, SkipPathList
   wscript.stdout.write result
else
   ShowUsage
end if

Sub ShowUsage
    wscript.echo wscript.scriptname & " projectname projectpath FileFilter"
 wscript.echo "---FileFilter Syntax: use regex syntax"
End Sub

Sub CreateProjectByPath(ProjectName, ProjectPath, FileFilter, SkipPathList)
    Set fso = CreateObject("Scripting.FileSystemObject")
 tabCount = 1
 flag = 1
 result = result & "<?xml version=""1.0"" encoding=""gb2312""?>" & chr(13) & chr(10) 
 result = result & "<VisualStudioProject" & chr(13) & chr(10) 
 result = result & MakeTab(tabCount) & "ProjectType=""Visual C++""" & chr(13) & chr(10) 
 result = result & MakeTab(tabCount) & "Version=""7.10""" & chr(13) & chr(10)
 result = result & MakeTab(tabCount) & "Name=""" & ProjectName & """" & chr(13) & chr(10)
 result = result & MakeTab(tabCount) & "ProjectGUID=""{00000000-0000-0000-0000-888888888888}""" & chr(13) & chr(10)
 result = result & MakeTab(tabCount) & "Keyword=""Win32Proj"">" & chr(13) & chr(10)
 
 result = result & MakeTab(tabCount) & "<Platforms>" & chr(13) & chr(10)
 result = result & MakeTab(tabCount+1) & "<Platform" & chr(13) & chr(10)
 result = result & MakeTab(tabCount+2) & "Name=""Win32""/>" & chr(13) & chr(10)
 result = result & MakeTab(tabCount) & "</Platforms>" & chr(13) & chr(10)
 
 result = result & MakeTab(tabCount) & "<Configurations>" & chr(13) & chr(10)
 
 result = result & MakeTab(tabCount) & "<Configuration" & chr(13) & chr(10)
 result = result & MakeTab(tabCount+1) & "Name=""Debug|Win32""" & chr(13) & chr(10)
 result = result & MakeTab(tabCount+1) & "OutputDirectory=""Debug""" & chr(13) & chr(10)
 result = result & MakeTab(tabCount+1) & "IntermediateDirectory=""Debug""" & chr(13) & chr(10)
 result = result & MakeTab(tabCount+1) & "ConfigurationType=""1""" & chr(13) & chr(10) 
 result = result & MakeTab(tabCount+1) & "CharacterSet=""2"">" & chr(13) & chr(10)
 result = result & MakeTab(tabCount) & "</Configuration>" & chr(13) & chr(10)
 
 result = result & MakeTab(tabCount) & "<Configuration" & chr(13) & chr(10)
 result = result & MakeTab(tabCount+1) & "Name=""Release|Win32""" & chr(13) & chr(10) 
 result = result & MakeTab(tabCount+1) & "OutputDirectory=""Release""" & chr(13) & chr(10)
 result = result & MakeTab(tabCount+1) & "IntermediateDirectory=""Release""" & chr(13) & chr(10)
 result = result & MakeTab(tabCount+1) & "ConfigurationType=""1""" & chr(13) & chr(10)
 result = result & MakeTab(tabCount+1) & "CharacterSet=""2"">" & chr(13) & chr(10) 
 result = result & MakeTab(tabCount) & "</Configuration>" & chr(13) & chr(10)
 
 result = result & MakeTab(tabCount) & "</Configurations>" & chr(13) & chr(10)
 
 result = result & MakeTab(tabCount) & "<References>" & chr(13) & chr(10)
 result = result & MakeTab(tabCount) & "</References>" & chr(13) & chr(10) 
 
 result = result & MakeTab(tabCount) & "<Files>" & chr(13) & chr(10)
    IteratorPath ProjectPath, FileFilter, SkipPathList, "IteratorProjectFiles", flag, tabCount + 1
 result = result & MakeTab(tabCount) & "</Files>" & chr(13) & chr(10)
 
 result = result & MakeTab(tabCount) & "<Globals>" & chr(13) & chr(10)
 result = result & MakeTab(tabCount) & "</Globals>" & chr(13) & chr(10)
 result = result & "</VisualStudioProject>"
End Sub

function MakeTab(tabCount)
    dim ret
    for i = 1 to tabcount
    ret = ret & chr(9)
 next
 MakeTab = ret
end function

Sub IteratorPath(path, FileFilter, SkipPathList, IteratorFunc, flag, tabcount)
    Dim folder, subfolders, subfiles
    Set folder = fso.GetFolder(path)
    if not fso.FolderExists(path) then
        wscript.echo path
        wscript.echo "path's not exists"
        exit sub
    end if
  
 if (SKipPathList <> "") then
 if (MatchFilter(path, SkipPathList)) then
  exit sub
 end if
 end if
 
    set subfolders = folder.SubFolders
 totalfolders = totalfolders + subfolders.count
    if flag = 1 then 
  result = result & MakeTab(tabCount)     & "<Filter" & chr(13) & chr(10) _
                  & MakeTab(tabCount + 1) & "Name=""" & folder.name & """" & chr(13) & chr(10) _
      & MakeTab(tabCount + 1) & "Filter=""cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx""" & chr(13) & chr(10) _
      & MakeTab(tabCount + 1) & "UniqueIdentifier=""{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"">" & chr(13) & chr(10)
  flag = 0    
 else
        result = result & MakeTab(tabCount)     & "<Filter" & chr(13) & chr(10) _
                  & MakeTab(tabCount + 1) & "Name=""" & folder.name & """" & chr(13) & chr(10) _
                        & MakeTab(tabCount + 1) & "Filter="""">" & chr(13) & chr(10)
 end if 
    for each subfolder in subfolders
     curfolderinx = curfolderinx + 1
        curpath = path & "/" & subfolder.name
        IteratorPath curpath, FileFilter, SkipPathList, IteratorFunc, flag, tabcount + 1
    next
    cmd = IteratorFunc & " """ & path & """, """ & FileFilter & """," & tabcount + 1
    execute  cmd
    result = result & MakeTab(tabCount) &"</Filter>" & chr(13) & chr(10)
End Sub

Function MatchFilter(stringspec, filter)
 Dim RegEx, Matches
 Set RegEx = new RegExp
 RegEx.Pattern = filter
 RegEx.IgnoreCase = true
 RegEx.Global = true
 Set Matches = RegEx.execute(stringspec)
 MatchFilter = Matches.count > 0
End Function

Sub IteratorProjectFiles(path, FileFilter, tabcount)
    set iterfolder = fso.GetFolder(path)
 totalfiles = totalfiles + iterfolder.files.count
    for each file in iterfolder.files
     if (MatchFilter(file.name, FileFilter)) then
   result = result & MakeTab(tabCount)   & "<File" & chr(13) & chr(10) _
       & MakeTab(tabCount+1) & "RelativePath=""" & path & "/" & file.name & """>" & chr(13) & chr(10) _
       & MakeTab(tabCount)   & "</File>" & chr(13) & chr(10)
  end if
  curfileinx = curfileinx + 1
  wscript.stderr.write curfolderinx & "/" & totalfolders & " folders are handled," & curfileinx & "/" & totalfiles & " files are handled!" & chr(13)
    next
End Sub

 

 

如果想生成VC2005工程,仅需要把版本号version="7.10"改成version="8.00"即可

vc6.0,vs2005下插入excel表格 现将vs2005中MFC中添加Excel类步骤详述详细步骤介绍如下: 打开你的MFC工程,选择项目-->添加类,然后会弹出一个对话框,如下: 选择MFC中的TypeLib中的MFC类,然后点击“添加”按钮,弹出如下对话框,选择文件,找到系统Excel.exe的目录,然后加载你需要的类: 常用的有:_Application、Workbooks、_Workbook、Worksheets、 阅读详情

相关推荐

在已创建MFC工程中添加BCGControlBar来美化外观

这两天准备学习AnyCad这个半开源的CAD软件,发现里面用了BCGControlBar这么一个MFC界面库,发现挺好用。而VC6.0的MFC的单调的外观一直被大家诟病,所以想在VC6.0里面是用BCGControlBar。 到官网下载专业版只有三十天的试用期,而且每建立一个工程运行之后都会提示让你购买正式版,很烦,所以到网上一搜,有破解的,下载了优快云上的:http://downlo

jinyuan7094的专栏 4987

一步一步创建VC2005解决方案

    现在软件开发已经告别了“独行侠”的年代,而是以团队开发为主。一般情况下,一个解决方案都会包含多个项目,比如:其中一些是静态库项目,一些是动态库项目,当然还会有应用程序项目。另外,根据需要,还可能会使用一些第三方库。因此为解决方案设置一个合理的目录结构并配合一定的环境变量,不但可以使得代码管理更井井有条,项目成员之间也更容易相互配合,更重要的是能够使得最终应用程序的安装包制作,源代码打包发布

寒星轩 1万+

vc6.0调用vega prime2.2遇到的问题

正常讲,不同的vega prime版本对应不同的vc版本,vega prime 1.2 对应vc6.0,vp2.0对应vc7.0即vs2003,vp2.2对应vc7.0或vc8.0(vs2005),但是由于做项目常用vc6.0,于是尝试用vc6.0开发vp2.2,按照《vega Prime实时三维虚拟现实开发技术》上配置vs2003的步骤配置vc6.0,遇到了一些问题。     首先配置程序运行

控球中锋 2020

VC2005 转换成 VC2003

今天看到一篇博文,说如何把VC2005工程转VC2003 其实用手工完成也很简单。文章最后将给出方法。先把博文转载如下。 今天在老外的网站上找到一个小工具 testConvert.exe, 能把VC2005的工程转换为VC2003,实在是爽,而且还给了源码。。哈哈 http://dl2.youkuaiyun.com/down4/20070718/18143940621.zip举个例子D:/

我的程序世界 2657

VC6/VC2005环境下MFC程序免Office依赖读取并展示.xls表格数据

双击运行即可加载.xls文件,自动解析第一个工作表内容,逐行填充到标准CListCtrl列表控件中。不调用Excel进程、不依赖Office安装或OLE组件,通过内置CSpreadSheet.h直接解析.xls二进制结构,适合轻量级数据导入场景。提供完整VS工程(含.dsp/.vcproj)、源码(readText.cpp/readTextDlg.cpp等)、编译产物(readText.exe)及配套资源(图标、清单、预编译头、调试符号文件),支持Debug模式调试和快速集成。附带test.xls测试样例,

ruby5的博客 167

ElementUI中的el-table解决宽度问题 - 根据内容自动撑开

在使用element-ui中,会发现表格组件el-table在未指定宽度情况下,会自动计算并给表格宽度赋值。但实际开发中,有时需要根据内容实际长度自动撑开显示,由内容的多少而决定表格的宽度,而不是默认宽度为100%。在默认情况下表格宽度为100%显示,并且列项未指定宽度情况下,剩余部分会平均分配宽度,本案例实际需求是由内容自动撑开显示。componentUpdated

觉醒法师的专栏 1万+

VC2005和VC2008编写的程序的发布方法

1.使用静态MFC,静态ATL的程序发布直接发布exe,dll即可。不需要manifest文件。2.winxp和win2003操作系统的程序发布2.1.VC2005的程序发布(使用动态MFC,动态ATL)将VC2005安装目录下:VC/redist/Debug_NonRedist/x86 和VC/redist/x86文件夹复制到exe所在的目录下,如下图所示。发布exe,dll时要同时发布对应

new_stranger的专栏 2046

液冷方式介绍

如果将直径在1~100nm的颗粒悬置在传热流体(例如:水、乙烯、乙二醇等)中时,其传热能力会得到提升,因为大多数固体材料的热导率要大于液体,因此由颗粒、流体组成的混合物热导率也高于液体本身的热导率,由此制成的流体,我们称之为纳米流体。金属冷管的液体工质蒸散量几乎为0,而柔软材质的管道则会产生液体的蒸散,在封闭式循环系统中,为了弥补液体工质的蒸散,必须定期在系统中补充液体工质。——我们之前说过,材料的导电和导热的机制大致是类似的,所以导电能力更强的金属往往具有更好的导热能力。

制冷技术咨询与服务的博客 2049

vc 2005 2003

经常遇上这样的郁闷的事,除非再建个工程把文件都加进来,否则没别的办法。。。OOO,oh,NO今天在老外的网站上找到一个小工具 testConvert.exe, 能把VC2005的工程转换为VC2003,实在是爽,而且还给了源码。。哈哈 http://dl2.youkuaiyun.com/down4/20070718/18143940621.zip举个例子D:/dx9/ 目录下 有 xxx.vcproj,是

454

MIL-STD-1553B协议解析与工程实践指南

MIL-STD-1553B作为军用航空电子系统的核心通信协议,采用命令/响应式串行总线架构,通过双冗余设计实现高可靠性数据传输。该协议定义了三类终端设备(总线控制器、远程终端、总线监视器)和六种标准消息格式,典型应用包括飞行控制系统、导航设备等关键航电组件的实时数据交互。深入解析模式代码机制和状态字位域定义,其中传输向量字(10000)和同步命令(00001)等关键指令在分布式系统时间对齐、故障诊断等场景发挥重要作用。工程实践中需特别注意78Ω终端阻抗匹配、4-12μs响应时间窗口等硬性指标,结合变压器耦合

weixin_33431149的博客 436

出现 Error occurred during initialization of VMagent library failed Agent OnLoad 解决方法

ntelliJ IDEA启动时出现"Agent library failed to load"错误,主要原因是JVM代理加载失败。解决方法包括:1)完全卸载并删除用户目录下的JetBrains配置文件;2)检查并修改idea64.exe.vmoptions文件,确保路径正确并删除不必要的-javaagent参数;

码农研究僧的博客 2485

(转)VC程序在没装VC的机器中运行

http://blog.pfan.cn/miaowei/36283.html 由于工作需要,经常需要演示。我们是一个专门搞研究开发的公司,主要是利用C和C++做开发。一些研究成果需要经常演示给总部的人看。演示的时候一般都是带一台笔记本去,而这笔记本一般是没有装过VC,也没有装VS.net的,而在演示的时候,我们有些程序是用VC6.0,有些程序是VS.NET2003, 有些程序还是用

mmmmmmmmnnnnxx的专栏 737

Agent驱动电商运营:从选品到售后的全链路革新

在当今竞争激烈的电商市场中,传统的电商运营模式面临着诸多挑战。从选品到售后,每个环节都需要大量的人力投入和专业知识。选品需要深入了解市场趋势和消费者需求,营销需要精准定位目标用户,客服需要24小时响应用户咨询。这些工作不仅耗时耗力,而且容易受到人为因素的影响,导致效率低下和成本高企。AI Agent是一种能够感知环境、做出决策并采取行动的智能系统。感知能力:能够获取和处理环境信息。决策能力:能够根据感知到的信息做出决策。行动能力:能够执行决策,对环境产生影响。学习能力。

AI 领航者的博客 354

VS2003 VS2005的工程支持库

VS2005  D:/Program Files/Microsoft Visual Studio 8/VC/redist 在这个目录下

734

华为OD机试双机位C卷-用户入网定期复评(C/C++/Py/Java/Js/Go)

华为OD机试(机考)双机位C卷 【用户入网定期复评】,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。华为OD机试真题【用户入网定期复评】。

qq_45776114的博客 840

华为OD机试真题 新系统2026-04-08 C语言 实现【直捣黄龙】

小王在玩一款叫做直捣黄龙的小游戏,在该游戏中他需要从入口位置进入敌营,绕过哨兵的层层封锁,达到敌军司令部实施斩首行动。 敌军阵营是一个n*n的矩阵,入口在坐标(0,n/2),敌军司令部在坐标(n-1,n/2),每个哨兵警戒以自己为中心的9宫格,一旦被哨兵发现则行动失败。

MISAYAONE的博客 184

VC 2005 下如何编译安装qt

转自:http://blog.5d.cn/user43/JjYyBb/200810/502508.htmlQt是一个跨平台的C++图形用户界面库,由挪威TrollTech公司出品,Qt支持所有的UNIX系统,包括Linux系统,还支持WinNT/Win2k、Windows 95/98平台。   本文将使用简单的几个步骤说明在VC 2005下如何编译安装并开发QT应用程序:一、下载及安装

后花园 1165

Windows11搭建GPU版本PyTorch 开发环境教程

Windows11搭建GPU版本PyTorch环境详细过程

世界那么大,我想去看看~【随心更新,看世界去了😄】 3236

VC程序在没装VC的机器中运行

VC程序在没装VC的机器中运行(发表时间: 2008-6-26 16:01:00) 【评论】 【打印】 【字体:大 中 小】 本文链接:http://blog.pfan.cn/miaowei/36283.html复制链接 分享到:0 标签:vs.net2005 vs.net2003 没装VC 没有VC  由于工作需要,经常需要演示。我们是一个专门搞研究开发的公司,主要是

程序猿的实验室 1226

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

VC 2005/2008 QT 安装

VC2005:1. 安装Visual C++ Express Edition 2005。2. 安装Microsoft Platform SDK for Windows Server 2003 R2。--Visual C++ Express Edition 2005本身不含windows sdk。下载地址:http://www.microsoft.com/downloads/detail

Blue Light的专栏 C++,OOA/D/P 2390

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

默认使用VC6.0打开工程

默认使用VC6.0打开工程 (2009-05-04 17:50:27)<br />当你在系统中同时安装了vs2003/2005/2008和vc6.0,双击运行一个工程会时自动使用版本高的打开该工程,如会自动用vs2003/2005/2008打开。如何双击用vc6.0开发呢?其实方法很简单,通过以下几步便可完成!<br />第一步:右键单击该工程,在弹出菜单中选择“打开方式”,在“打开方式”的展开菜单中选择“选择程序(c)...”。<br /><br />第二步:在第一步最后单击“选择程序(c)...”会弹出

千愚千寻 1930

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

扫盲贴 Visual Studio 2005/2008中如何编译和运行C++程序

<br />        经常看见有新手朋友在百度问如何使用Visual C++ 2005,怎么说呢,VC2005是非常强大的开发工具,其功能非常非常的多,不是一时半会儿就能说完的,不过,今天我就来扫扫盲,就说一点点基本的东西。<br />       声明:此贴只对新手有用,高手恳请忽略此贴,以免浪费时间。<br />       好了,各位看官,让我们开始吧,首先说说Visual Studio 2005吧,Visual Studio 2005是一个功能强大的开发平台,除了我们今天要说到的VC2005之

liuzheng2684的专栏 816

VC 2005 下如何编译安装并开发 QT 4.4.0 应用程序

Qt是一个跨平台的C++图形用户界面库,由挪威TrollTech公司出品,Qt支持所有的UNIX系统,包括Linux系统,还支持WinNT/Win2k、Windows 95/98平台。  本文将使用简单的几个步骤说明在VC 2005下如何编译安装并开发QT应用程序:一、下载及安装1. 从官方网站http://trolltech.com/lang/cn/downloads/open-source-d

Augusdi的专栏 1997

删除 VC 6.0 和 VC 2003 工程临时文件的批处理脚本

1. 目的:   如果你要将程序上传到 svn , 或者压缩备份, 或者打包发给别人, 如果不删除临时       文件, 文件夹(或压缩文件)会很大. 但是工程每经过一次打开,编译, 就会重新产生       这些临时文件. 要删除这些临时文件, 必将浪费一些时间, 如果没有经验, 又怕会        误删一些文件. 所以利用周末的一点时间写了一个批处理脚本, 希望大家试用, 并       

dengniancai的专栏 2257

Visual Studio 2005/2008中如何编译和运行C++程序(转)

dadaooxx的专栏 825
上一篇: 经典英语句型
下一篇: 编程的几种境界
AWolfBoy
博客等级 码龄24年 4粉丝 37原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值