Возможно, внимание на "инжекционную" часть? Когда я вижу, что термин, думаю о сиринксах. Процесс продвижения зависимостей компонента к компоненту может считаться вводящий в компонент.
Точно так же, как с телом, когда существует что-то, в чем оно нуждается в способе медицины (компонент, в котором оно нуждается) можно ввести его в тело.
Вы должны записать данные конфигурации конкретного пользователя в папку Application Data для текущего пользователя, используя специальные папки enum и Enivronment.GetFolderPath .
Распространенным решением будет установка файлов конфигурации в папку Application Data, например, как показано ниже:
Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)
Рекомендуется не хранить данные конфигурации в папке Program Files. Вместо этого сохраните данные вашего приложения в% AppData% \ YourApplicationName. В зависимости от того, хотите ли вы хранить данные конфигурации для каждого пользователя или в общей общей папке, используйте одно из следующих перечислений, чтобы получить путь к папке:
string userAppData = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
string commonAppData = Envrionment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData);
По умолчанию пользователи Vista не запускают программы как администраторы и, следовательно, эти программы имеют доступ только для чтения к папкам в разделе «Program Files». Пользователи могут изменить это поведение, отключив UAC, и вы можете попросить своих пользователей сделать это, но в офисных настройках у пользователей может не быть этой опции. Вот почему вместо этого вы используете AppData - приложения всегда могут читать и записывать данные в папку AppData.
Информацию о UAC можно найти на сайте Microsoft. Хотя эта страница довольно длинная, это отправная точка для понимания UAC: http://msdn.microsoft.com/en-us/library/bb530410.aspx