c++ - VS2015 Express & VS2017 : Document cannot be opened: It has renamed, 删除或移动

标签 c++ templates export sfml project-template

嘿,我知道人们已经开始讨论这个问题了。

我正在尝试在 VS2015 Express 中创建一个 SFML 项目模板(我也在 VS2017 中尝试过)。我在这里、MSDN 论坛和其他网站上关注了许多关于这个问题的指南和答案。

无论我尝试什么,项目模板都无法从我创建模板的原始项目中打开我的源文件和头文件。 “无法打开文档:它已重命名、删除或移动。”

我正在使用/处理:
Win10电脑; 64 位
适用于 Windows 桌面的 VS Express 2015;诉 14.0.25431.01 更新 3
与 2017 年相比; v. 15.3.5(尽管使用 VSE 2015)

我试过的:
- 在 texteditor 中打开 MyTemplate.vstemplate 文件,在 TemplateData 中添加 true;

  • 添加:filename.cpp 或
    文件名.h,将文件名替换为 TemplateContent 部分中的 .cpp 和 .h 文件名
  • 未选中导出模板时自动导入模板
  • 解压缩、添加源文件、重新压缩和放置 zip 文件到 Templates\Project Templates 压缩和解压缩
  • 将上面提到的新 zip 文件(包括源文件)添加到我的导出模板文件夹
  • 还没有删除 MyTemplate.vstemplate 中的 Properties 文件夹,因为我在那里找不到文件?

  • 我已经在办公 table 前待了大约 3 个小时,遇到了我的第一个障碍,我不知道该怎么办。请各位大神帮忙。

    编辑:发现问题;尽管原始 .cpp 和 .h 文件并未添加到导出的模板中。

    当我使用自定义模板创建新项目时,源文件(来自用于创建模板的原始项目)不会自动添加到新项目的文件中。所以我必须手动将文件从我的原始项目复制到新项目的文件夹中。

    有什么方法可以将原始源文件添加到新项目的文件中,这样我就不必每次都手动进行了吗?

    最佳答案

    我知道这已经很老了,但我正在经历同样的事情,这让我发疯。所以我想出了如何编辑项目模板以使其工作。

    我使用了 Winrar,但我敢肯定有一个更简单的方法,但它是这样的:

    我去了 C:\Users\MyName\Documents\Visual Studio 2015\Templates\ProjectTemplates

    并用 winrar 打开我的 SFML 模板。然后,我将原始项目中的所有 .h 和 .cpp 文件复制到模板中。我通过拖放文件对另一个 winrar 实例进行了此操作。

    然后,我编辑了 MyTemplate.vstemplate 文件。我通过复制和粘贴已经存在的一个来添加一个新的“ProjectItem”行。例如:

      <ProjectItem ReplaceParameters="false" TargetFileName="ReadMe.txt">ReadMe.txt</ProjectItem>
    

    这是原始行,我复制并编辑它以匹配我添加的文件之一。例如,我在新行中将 ReadMe.txt 更改为 SFML.cpp。

    我对所有新文件都这样做了,保存了它,然后它就起作用了!

    请注意,我在任何时候都没有提取模板 .zip。

    关于c++ - VS2015 Express & VS2017 : Document cannot be opened: It has renamed, 删除或移动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49249776/

    相关文章:

    mysql - 使用导出与动态数据库node.js连接

    c++ - CMake 是否需要静态库(例如 ZLIB)?

    c++ - 将 Sprite 旋转到鼠标位置

    c++ - 结构和类层次结构(制作模板)

    c++ - 模板 = 未找到运算符

    javascript - 我应该/必须导出 Javascript ES6 中另一个导出类返回的返回类吗?

    c++ - USER32.dll 中缺少入口点会阻止程序启动,C++,VS2015

    c++ - 没有可用的源 "libstdc++-6!_ZNSo9_M_insertIlEERSoT_() at 0x6fc868a8"

    templates - 如何将选定的命名参数传递给 Jinja2 的包含上下文?

    c++ - 导出数据成员是否正确? (C++)