vs7.1工程文件到Programmer's Notepad编辑器工程的转换
来源:互联网 发布:美国网络教育 本科 编辑:程序博客网 时间:2024/05/22 01:04
实际上是将vs7.1的工程文件(*.vcproj)到编辑器Programmer's Notepad的工程文件(*.pnproj)转换,所需的工作量是很小的。
最近要做毕设,需要查看eMule的源代码,但本人机了太烂没装vs200X,于是想转换到Programmer's Notepad中的工程文件来查看。eMule源代码中有大量的文件,想一个个地添加到太麻烦了,好在它们的工程文件都是xml格式的,使用xslt来软件就很容易了。
PNotepad的工程文件格式很简单,根节点为Project,里面依次为Folder/File,都使用属性来表示相关信息。一示例如下:
而在vs工程文件*.vcproj中需要关注的结点是VisualStudioProject/Files,所有文件名就存放该标签里。Files下是用Filter来代表各个文件夹,其下的File标签就代表一个文件了。它们有如下简单的对应关系:
*.vcproj | *.pnproj
<VisualStudioProject name=""> | <Project name="hello">
<Files> |
<Filter name=""> | <Folder name="New Folder">
<File RelativePath=""> | <File path="AbstractFile.h">
一个xsl文件如下:
需要注意的是使用浏览器进行转换时并不能看到转换后的结果,最好使用能转换xml格式的编辑器。我使用的是SharpDevelop,它是一个开源的C# IDE工具,带有xml编辑器,且提供xsl转换功能。将vs工程文件的vcproj后缀改为xml后用SharpDevelop打开,这时主菜单中会出一个xml菜单,其中“Assign XSLT”指定xsl文件,“Run XSLT”进行转换,转换结果会在一个新的窗口中显示出来。
这个转换文件有一个问题是,需要考虑文件的相对位置,这可能也要在xsl文件中体现出来。上面代码中第19行最后srchybrid/就是一个相对路径。
最近要做毕设,需要查看eMule的源代码,但本人机了太烂没装vs200X,于是想转换到Programmer's Notepad中的工程文件来查看。eMule源代码中有大量的文件,想一个个地添加到太麻烦了,好在它们的工程文件都是xml格式的,使用xslt来软件就很容易了。
PNotepad的工程文件格式很简单,根节点为Project,里面依次为Folder/File,都使用属性来表示相关信息。一示例如下:
- <Project name="hello">
- <Folder name="New Folder">
- <File path="AbstractFile.h"></File>
- <File path="3DPreviewControl.h"></File>
- <File path="AbstractFile.cpp"></File>
- <File path="3DPreviewControl.cpp"></File>
- </Folder>
- </Project>
*.vcproj | *.pnproj
<VisualStudioProject name=""> | <Project name="hello">
<Files> |
<Filter name=""> | <Folder name="New Folder">
<File RelativePath=""> | <File path="AbstractFile.h">
一个xsl文件如下:
- <?xml version="1.0" encoding="utf-8"?>
- <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
- <xsl:output method="text" />
- <xsl:template match="/">
- <Project>
- <xsl:attribute name="name"><xsl:value-of select="VisualStudioProject/@Name" /></xsl:attribute>
- <xsl:apply-templates select="VisualStudioProject/Files/Filter" />
- </Project>
- </xsl:template>
- <xsl:template match="Filter">
- <Folder>
- <xsl:attribute name="name"><xsl:value-of select="@Name" /></xsl:attribute>
- <xsl:apply-templates select="File" />
- </Folder>
- </xsl:template>
- <xsl:template match="File">
- <File><xsl:attribute name="path">srchybrid/<xsl:value-of select="@RelativePath" /></xsl:attribute></File>
- </xsl:template>
- </xsl:stylesheet>
这个转换文件有一个问题是,需要考虑文件的相对位置,这可能也要在xsl文件中体现出来。上面代码中第19行最后srchybrid/就是一个相对路径。
- vs7.1工程文件到Programmer's Notepad编辑器工程的转换
- 送给用 EditPlus 或 Programmer's Notepad 等编辑器写代码的朋友!
- Programmer's Notepad
- Wince系统-EVC工程文件转换到VS2005工程文件的方法
- 从VS2003工程到VS2002的转换
- source Insight添加.s文件到工程中
- 将资源文件转换为头文件嵌入到工程
- VS C工程二【打开VC6++工程:错误1 error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏】
- 使用Notepad++的工程管理视图
- 使用Notepad++的工程管理视图
- VC工程中各文件的作用以及VC工程和VS工程相互转换
- android工程转换到apk
- Notepad++ 管理工程
- Programmer's Notepad 2.0.8 (build 718)
- Visual Studio 2005 编译 Programmer's Notepad
- VC7到VC6工程的转换工具(转)
- VC7到VC6工程的转换工具(ZT)
- VC6.0工程转换到VS2010版本的常见问题
- 200811 每日一句(By foreveryday007)
- Spring2.5视频教程
- 200812 每日一句(By foreveryday007)
- 中小IT企业如何留住80后技术人才
- FCKeditor2.4.1 for java 教程
- vs7.1工程文件到Programmer's Notepad编辑器工程的转换
- 冬天按摩这5地方 强过吃补品
- 自定义事件
- VC6 轻松实现 xp 样式控件
- Sybase脚本修改为oracle脚本备忘
- 关于Axis2 Eclipse plugin在eclipse中不能使用的问题
- 浏览器高宽的一致性
- 使用三色笔按照思维导图的方式记笔记
- Flex Data Services 2 Java Reference(Public API)