Sigh .... Это помогает прочитать документацию о том, что вы используете, вместо того, чтобы просто предположить, что вы знаете, что она делает.
Environment.SpecialFolder - это перечисление. Набор числовых значений, который относится к «хорошо известному» набору понятий. В этом случае MyDocuments имеет значение 5, а не путь к папке.
Если вы прочитали документацию по
string path = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
# [#
^
#] , вы увидите, что он sepcifically говорит:
Метод GetFolderPath возвращает местоположения, связанные с этим перечислением. Расположение этих папок может иметь разные значения в разных операционных системах, пользователь может изменить некоторые местоположения, а местоположения локализованы. Вы должны используйте Environment.GetFolderPath (), чтобы получить фактический путь к папке:
string path = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);