Visual c++ 将文件自动放入Visual Studio 2005的/scripts文件夹中

Visual c++ 将文件自动放入Visual Studio 2005的/scripts文件夹中,visual-c++,visual-studio-2005,Visual C++,Visual Studio 2005,我在项目中设置了一系列过滤器来帮助查找文件。但是我所有的源代码文件实际上都放在两个文件夹中,源/头。。。这些过滤器仅适用于VisualStudio组织,但我希望保持目录结构简单,以便在其他编译器中构建 无论如何,每当我添加一个新项目或类时,文件都会进入我的/scripts文件夹,我必须移动它们。有没有一个项目特定的方式来改变这一点,我厌倦了必须这样做 没有这样的选项可以自动为您做所有事情。但是,在添加新项目时,您可以右键单击所需的过滤器,选择添加->新建项目。在打开的对话框中,可以更改创建文件的

我在项目中设置了一系列过滤器来帮助查找文件。但是我所有的源代码文件实际上都放在两个文件夹中,源/头。。。这些过滤器仅适用于VisualStudio组织,但我希望保持目录结构简单,以便在其他编译器中构建


无论如何,每当我添加一个新项目或类时,文件都会进入我的/scripts文件夹,我必须移动它们。有没有一个项目特定的方式来改变这一点,我厌倦了必须这样做

没有这样的选项可以自动为您做所有事情。但是,在添加新项目时,您可以右键单击所需的过滤器,选择添加->新建项目。在打开的对话框中,可以更改创建文件的路径。确认对话框后,文件将同时位于正确的筛选器和文件夹中。

在visual studio 2005中,不可能开箱即用

诸如此类的事情,独立于项目系统的能力,以及每个新版本的版本更改,开放跨平台构建的可能性,都是我转而以编程方式生成项目和解决方案的原因。我们获取磁盘上的内容,并根据磁盘上的内容重新创建项目中的所有过滤器

我没有回头看


当然,这是另一个具有学习曲线的工具,但将脚本引擎引入构建环境会带来很多机会。

请澄清:您是否有脚本文件夹或脚本过滤器?默认情况下,VS应在头文件/源文件过滤器中放置新文件,是否会发生这种情况

您可以使用宏自动移动文件:

DTE.Windows.Item(Constants.vsWindowKindSolutionExplorer).Activate()
DTE.ActiveWindow.Object.GetItem("{original filename including filter}").Select(vsUISelectionType.vsUISelectionTypeSelect)
DTE.ExecuteCommand("Edit.Cut")
DTE.ActiveWindow.Object.GetItem({target filter}).Select(vsUISelectionType.vsUISelectionTypeSelect)
DTE.ExecuteCommand("Edit.Paste")
这样的代码可以在添加文件时执行:

右键单击过滤器并选择“属性”时,屏幕右侧将打开一个窗口。您将有一个名为Filter的字段,其中包含当前筛选器支持的扩展(例如include:h;hpp;hxx;hm;inl;inc)


可能您的脚本过滤器在这方面有问题。

是的,我就是这么做的,每个文件都是这样。这是一种痛苦,所以我希望我能将一个过滤器映射到一个目录或其他东西。我不能完全“理解”VS中过滤器的用途。我认为它们就像文件夹一样,但你可以将文件类型关联放在它们上面,这似乎有点混乱。@John。你是对的。过滤器(或文件夹、容器的类型)分配了一系列扩展,允许在容器中显示这些扩展。我从来没有这样用过。@John:我只是想告诉你,它有用吗?我从来没用过这个。