Renaming files from projucer does not work with Visual Studio

It is the only issue I have with projucer, since I started using it. I have no problem adding modules, creating or deleting files.

I do not understand what is happening, so I cannot give specific details. I just know that everything is out of sync. When I think I have fixed it in Visual, in projucer it returns to the previous file marked in red.

It is not serious, I always manage to fix it by removing the old references and adding them again, it is just a nuisance.

I don’t understand, it’s fine for me, as Projucer rebuilds the solution files when launching VS from it.

VS or XCode don’t control the files you use, Projucer does. You always have to start with the projucer, as you can’t delete files in VS.

When you have both Projucer and VS open, and you rename some file(s) in Projucer - as soon as you switch to VS it should display a message like “yadda yadda, something has changed. Reload all the files? Cancel?” If you select “Reload All” it’ll refresh the solution with the renamed files. There are some times however when it doesn’t do so automatically; in such cases, best thing is to close VS and reopen it.


I have been doing tests, and I think I have already detected the problem. When a file is renamed, the file on disk is renamed, but not the project reference until it is saved.

If I save the project, VS detects it and its reference is also modified. But if I exit Projucer, it doesn’t ask if I want to save it, the “Closing document …” window is not shown. So if I go back to Projucer the file is shown in red, since the project does not match the disk, the mess is created

I think it is a small bug whereby the renaming does not mark the project as modified to avoid closing without saving. Now that I know the problem I will make sure to save the project in each modification.

Although I think that what reflects the disk and the project should always be synchronized. Perhaps the modifications on the disk should not take place until the project is saved.