16

我在我的游戏项目中遇到上述任何问题。网上已经有很多答案,我查看了所有答案,但它们对我不起作用或有不同的情况。这是我的情况:

这是我的解决方案

这就是我的解决方案的样子。我将项目名称从Visual Studio 更改为 ,这很有效X-PowerNeo_Elements但它不会影响实际的物理文件夹。

.vcxproj 文件的物理文件路径和名称是...\Neo_Elements\WorldScrollingGame\WorldScrollingGame.vcxproj.

.sln 文件的物理文件路径和名称是 ...\Neo_Elements\X-Power.sln

我想做的事:

  1. 将解决方案重命名为Neo_Elements(因此.sln文件将相应更改)

  2. 将文件路径更改为...\Neo_Elements\Neo_Elements\...

  3. 将 .vcxproj 文件重命名为Neo_Elements.vcxproj

所以更改后 .sln 文件路径和名称应该是 ...\Neo_Elements\Neo_Elements.sln

.vcxproj 文件路径和名称应该是...\Neo_Elements\Neo_Elements\Neo_Elements.vcxproj

解决方案和项目名称都是Neo_Elements

我做了什么:

  1. 在解决方案名称上按 F2 重命名 Visual Studio 中的解决方案。

发生了什么:

该项目不再构建并创建一堆编译错误,如下所示:

fatal error C1083: Cannot open include file: 'stdafx.h': No such file or directory
fatal error C1083: Cannot open include file: 'resource.h': No such file or directory

我什至没有更改物理文件夹,也不知道为什么找不到文件,而且丢失文件的位置对我来说似乎完全随机。(不仅是那些下面的\WorldScrollingGame,还有一些更深层次的。还有很多文件受到影响,但只有少数文件找不到)。当我尝试将解决方案名称改回时X-Power,结果证明我不能。它说“无法重命名解决方案,因为具有指定名称的解决方案文件已经存在”,尽管事实上已经不存在X-Power.sln了。尽管如此,我已经完全被困在这里,不得不从备份中恢复整个解决方案(或在 Windows 资源管理器中手动更改 .sln 文件的名称)。第一次尝试失败。

然后我开始尝试第二个,方法是在 VS 之外更改项目文件夹。

我做了什么:

我点击了这个链接:关闭VS,在VS之外重命名项目主管,在文本编辑器中编辑.sln更改"X-Power", "WorldScrollingGame\WorldScrollingGame.vcxproj""X-Power", "Neo_Elements\WorldScrollingGame.vcxproj"(奇怪的是X-Power应该是Neo_Elements因为我在VS中编辑了项目名称,但不知何故它没有反映这里的变化,除非这个不是项目名称的反映,根据该链接,绝不应该是这种情况。但由于之前发生的事情,我现在不想弄乱解决方案名称)。

发生了什么:

事实证明,我仍然收到一堆编译错误,类似于我第一次尝试时遇到的错误,不知道如何解决这些错误。

所以我没有费心尝试第三个,因为我什至不知道如何

请帮忙!这几个实在是过不去。

编辑:我知道开始一个新文件并迁移所有文件可能会更好,但我之前无法在任何情况下进行重命名——即使是单个解决方案重命名或单个项目目录重命名。所以我想借此机会弄清楚这实际上是如何工作的,因为它似乎对很多人都有效

4

3 回答 3

8

您收到消息的原因

“无法重命名解决方案,因为具有指定名称的解决方案文件已存在”

可能是因为根文件夹中有一个同名的“.sln”文件,或者项目文件夹中仍然存在与该旧解决方案相关的文件。

在解决方案根文件夹中找到“.vs”文件夹。查找与您尝试将解决方案命名为相同名称的文件夹。删除那个文件夹。

于 2021-01-26T15:45:07.413 回答
5

这是我过去所做的。首先尝试在 VS 中重命名解决方案并不好。假设您要更改项目名称和解决方案名称。

  1. 关闭VS。
  2. 在继续之前制作项目的备份副本。
  3. 在 Windows 资源管理器中,导航到您的解决方案根目录。这是您将找到您的 ProjectFile、包和 .sln 文件的地方。
  4. 让我们通过打开项目文件文件夹并重命名 .csproj 文件来更改项目名称。
  5. 接下来右键单击您的 .sln 文件并在记事本中选择编辑。寻找这样的一行: Project("{FAE04EC0-301F-11D3-BF4B-xxxxxxxxx}") = "MyProject", "MyProject\MyProject.csproj", "{C1AD3829-E4BA-4BF1-85EB-672A85A4D35D}" 更改在步骤 4 中将 .csproj 名称更改为新名称。您可能还希望使文件夹名称正确。
  6. 保存并关闭记事本。
  7. 最后右键单击 .sln 文件并选择重命名。选择你的名字并关闭。
  8. 现在打开 VS,选择 File>Open> Project Solution 并导航到您刚刚更改的 .sln 文件。
  9. 希望那成功了。如果不是,请仔细检查您的更改。
于 2018-05-24T20:10:39.763 回答
1

我可以给你一个我认为可行的建议。在解决方案资源管理器中的 Visual Studio 2012 中,通过打开所有节点并查看它的位置来找到文件 .vcxproj。然后从那里重命名文件。对您的所有其他文件执行相同操作。完成所有这些之后,您的最后一项任务应该是从 VS2012 内部更改解决方案名称。希望这会有所帮助。任何意见或回应将不胜感激。

于 2014-08-04T00:57:00.403 回答