Запись в директорию C:\\Program Files\\
От: Аноним  
Дата: 09.06.10 12:47
Оценка:
Ребята, здрасти.
Столкнулся со следующей проблемой.
Вот этот код:

  void CopyFile(string sourcefn, string destinfn)
        {
            FileInfo fn = new FileInfo(sourcefn);
            fn.CopyTo(destinfn, true);
        }

Копирует файл по пути "sourcefn" в "destinfn"
все работает если дело не доходит до записи в каталог "C:\\Program Files\\" при таком раскладе, он не пишет ничего.
Вопрос, отчего и почему?
Если кто-то имеет более продвинутый код, который с легкостью скопирует папку с под-под-подпапками, буду весьма признателен!
Спасибо!
Re: Запись в директорию C:\\Program Files\\
От: Alximik509 Россия  
Дата: 09.06.10 13:00
Оценка: :)
Здравствуйте, Аноним, Вы писали:

А>Ребята, здрасти.

А>Столкнулся со следующей проблемой.
А>Вот этот код:

А>
А>  void CopyFile(string sourcefn, string destinfn)
А>        {
А>            FileInfo fn = new FileInfo(sourcefn);
А>            fn.CopyTo(destinfn, true);
А>        }
А>

А>Копирует файл по пути "sourcefn" в "destinfn"
А>все работает если дело не доходит до записи в каталог "C:\\Program Files\\" при таком раскладе, он не пишет ничего.
А>Вопрос, отчего и почему?
А>Если кто-то имеет более продвинутый код, который с легкостью скопирует папку с под-под-подпапками, буду весьма признателен!
А>Спасибо!

Дай угодаю.. Win7?
Re[2]: Запись в директорию C:\\Program Files\\
От: Аноним  
Дата: 09.06.10 13:04
Оценка:
Здравствуйте, Alximik509, Вы писали:
А>>Вот этот код:

А>>
А>>  void CopyFile(string sourcefn, string destinfn)
А>>        {
А>>            FileInfo fn = new FileInfo(sourcefn);
А>>            fn.CopyTo(destinfn, true);
А>>        }
А>>

А>>Если кто-то имеет более продвинутый код, который с легкостью скопирует папку с под-под-подпапками, буду весьма признателен!
А>>Спасибо!

A>Дай угодаю.. Win7?


Нее!
не в UAC-е дело... у мну XP стоит и я админ...
Re: Запись в директорию C:\\Program Files\\
От: _FRED_ Черногория
Дата: 09.06.10 13:09
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Столкнулся со следующей проблемой.

А>Вот этот код:
А>  void CopyFile(string sourcefn, string destinfn)
А>        {
А>            FileInfo fn = new FileInfo(sourcefn);
А>            fn.CopyTo(destinfn, true);
А>        }

А>Копирует файл по пути "sourcefn" в "destinfn"
А>все работает если дело не доходит до записи в каталог "C:\\Program Files\\" при таком раскладе, он не пишет ничего.
А>Вопрос, отчего и почему?
А>Если кто-то имеет более продвинутый код, который с легкостью скопирует папку с под-под-подпапками, буду весьма признателен!

И ошибок нет? Напишите Debug.Print(sourcefn); Debug.Print(destinfn); вначале метода — что там будет? Попробуйте удалить что-нить из "Program Files" — удаётся?
Help will always be given at Hogwarts to those who ask for it.
Re: Запись в директорию C:\\Program Files\\
От: Alximik509 Россия  
Дата: 09.06.10 13:10
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Ребята, здрасти.

А>Столкнулся со следующей проблемой.
А>Вот этот код:

А>
А>  void CopyFile(string sourcefn, string destinfn)
А>        {
А>            FileInfo fn = new FileInfo(sourcefn);
А>            fn.CopyTo(destinfn, true);
А>        }
А>

А>Копирует файл по пути "sourcefn" в "destinfn"
А>все работает если дело не доходит до записи в каталог "C:\\Program Files\\" при таком раскладе, он не пишет ничего.
А>Вопрос, отчего и почему?
А>Если кто-то имеет более продвинутый код, который с легкостью скопирует папку с под-под-подпапками, буду весьма признателен!
А>Спасибо!

В 7ке просто Program Files стала "особой" папкой. Без админиских прав туда запись идет не простым образом, а перенаправляется в другую(какю уже не помню. погугли)

Так что в общем случае надо запрашивать админские права.
Re[2]: Запись в директорию C:\\Program Files\\
От: akasoft Россия  
Дата: 09.06.10 17:18
Оценка: :))
Здравствуйте, _FRED_, Вы писали:

_FR>Попробуйте удалить что-нить из "Program Files" — удаётся?


Это не совет из серии "удалите папку Windows с диска C. Удалили? Зря, зря.."
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>> SQL Express 2005
Re[3]: Запись в директорию C:\\Program Files\\
От: _FRED_ Черногория
Дата: 09.06.10 17:23
Оценка:
Здравствуйте, akasoft, Вы писали:

_FR>>Попробуйте удалить что-нить из "Program Files" — удаётся?


A>Это не совет из серии "удалите папку Windows с диска C. Удалили? Зря, зря.."


Виноват, надо было сначала попросить что-нить туда ненужное скопировать
Help will always be given at Hogwarts to those who ask for it.
Re: С лёгкостью
От: akasoft Россия  
Дата: 09.06.10 17:58
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>Если кто-то имеет более продвинутый код, который с легкостью скопирует папку с под-под-подпапками, буду весьма признателен!


xcopy /h /k /o /r /e /y c:\*.* d:\cdrive\
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>> SQL Express 2005
Re: Запись в директорию C:\\Program Files\\
От: Rumata_V Украина  
Дата: 10.06.10 10:18
Оценка: -1
Здравствуйте, Аноним, Вы писали:

А>Ребята, здрасти.

А>Столкнулся со следующей проблемой.
А>Вот этот код:

А>
А>  void CopyFile(string sourcefn, string destinfn)
А>        {
А>            FileInfo fn = new FileInfo(sourcefn);
А>            fn.CopyTo(destinfn, true);
А>        }
А>

А>Копирует файл по пути "sourcefn" в "destinfn"
А>все работает если дело не доходит до записи в каталог "C:\\Program Files\\" при таком раскладе, он не пишет ничего.
А>Вопрос, отчего и почему?
А>Если кто-то имеет более продвинутый код, который с легкостью скопирует папку с под-под-подпапками, буду весьма признателен!
А>Спасибо!

может ошибаюсь...
destinfn = "\"Program Files\""
прикол в кавычках может быть. Разорваное слово.
в смысле их надо добавить... вообще весь путь.
попробуй сделать win+r в окошке cmd затем cd C:\Program files получишь то что ничего не получится. а если сделать cd "C:\Program Files" получится.
Re: Запись в директорию C:\\Program Files\\
От: Аноним  
Дата: 11.06.10 05:02
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Ребята, здрасти.

А>Столкнулся со следующей проблемой.
А>Вот этот код:

А>
А>  void CopyFile(string sourcefn, string destinfn)
А>        {
А>            FileInfo fn = new FileInfo(sourcefn);
А>            fn.CopyTo(destinfn, true);
А>        }
А>

А>Копирует файл по пути "sourcefn" в "destinfn"
А>все работает если дело не доходит до записи в каталог "C:\\Program Files\\" при таком раскладе, он не пишет ничего.
А>Вопрос, отчего и почему?
А>Если кто-то имеет более продвинутый код, который с легкостью скопирует папку с под-под-подпапками, буду весьма признателен!
А>Спасибо!

Ребята, спасибо большое.
Но как говорится, ларчик просто открывался.
Дело оказалось вот в чем, програма запускаемая из под среды, она не имела по какой-то причине прав записи на C! Когда я запустил прогу из папки где она скомпилирована, то все стало работать. пишет, удаляет, и шрифты и то и сё.
Вопщем, аномалия, так как и VS запущена подо мной, а я админ.
Возможно это связанно с тем, что я использую портэбл версию, которую устанавливать не нужно.
В ней минусы есть конечно, например нет дебагера
За то можно таскать на флешке и работать где угодно, установки не требует.
Re[2]: Запись в директорию C:\\Program Files\\
От: divergo  
Дата: 15.06.10 08:38
Оценка:
А>За то можно таскать на флешке и работать где угодно, установки не требует.
SharpDevelop портабл, и дебагер имеет.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.