Я не знаю ни одного другого приложения, которое делает это.
Если я запустлю две копии Visual Studio, скажем, я ожидаю, что настройки последнего закрытого экземпляра будут сохранены.
Если вы назначаете экземпляру уникальный идентификатор (GUID), как вы будете использовать это значение при следующем запуске приложения? Или вы хотите получать новый набор значений при каждом запуске приложения?
Если вы хотите использовать повторно, вы можете создавать пронумерованные подкаталоги (1, 2, 3, 4 и т. Д.) И каждый раз, когда вы запускаете приложение, записывать файл блокировки в этот каталог. Затем проверьте наличие файла блокировки и увеличивайте число до тех пор, пока не найдете разблокированную папку.
UPDATE
В свете добавленного комментария - почему бы не получить путь к исполняемому файлу и создать папку под ним?
Если у пользователя нет прав на эту папку, вам придется создать какое-то отображение между местоположением и GUID (скажем), которое вы затем добавляете в настройки приложения и путь к настройкам пользователя.