Здравствуйте, Аноним, Вы писали:
А>Я уже начинаю склоняться к мысли, что не проще ли забить этот файл "нулями", узнать его смещение(начало) в сборке и читать и писать в двоичном виде.
Варварство, но если ничего другого не придумаешь...
>Вот только смущает пару вопросов. 1) Непрерывен-ли такой файл в сборке или VS при сборке может его "порезать" на части;
Непрерывен. В Win32 есть даже функция SizeOfResource и функция LockResource, которая возвращает указатель на начальный байт ресурса.
2) Даст-ли ОС вносить изменения в исполняемый файл
Здравствуйте, Аноним, Вы писали:
А>Ощущение, что ВЫ издеваетесь. Какой был вопрос :maniac:
Ощущение, что я впустую потратил время. Всего доброго.
Глаза у меня добрые, но рубашка — смирительная!
Re[12]: Shadow copying
От:
Аноним
Дата:
29.05.10 15:55
Оценка:
Здравствуйте, Aen Sidhe, Вы писали:
AS>Я задам вопрос: вы действительно считаете, что топикстартера волнуют такие проблемы?
Топикстартера действительно не волнуют такие проблемы. Ему по фигу строгое имя сборки и одновременный доступ к файлам. Единственное, что ему не по фигу, это возможность читать/записывать в файл, который при этом ещё является исполняемым
Re[11]: Можно-ли сделать файл внедренным ресурсом ???
Здравствуйте, <Аноним>, Вы писали:
AS>>Видимо, вы считаете, что в ваших ресурсах ручками порыться нельзя?
А>Мы с Вами, порыться сможем. А вот пользователи, только блокнотом пользоваться и умеют Просто порыться у них будет масса поводов. Это программа по тестированию персонала. А от результатов тестов, зависит присвоенный сотруднику уровень и соответственно з/п Так что прятать надо подальше, да ещё и шифровать.
Банально пройдись по файлу xor'ом при сохранении.
Тот, кто не сможет залезть в ресурсы твоей программы, тот и файл не расшифрует.
А кто сможет расксорить его, и в ресурсы найдет как залезть.
ИМХО, ерундой страдаешь.
... << RSDN@Home 1.2.0 alpha 4 rev. 1446>>
Re[6]: Прочти Рихтера, третье издание
От:
Аноним
Дата:
29.05.10 16:15
Оценка:
Здравствуйте, Qbit86, Вы писали:
Q>Здравствуйте, Аноним, Вы писали:
А>>Ощущение, что ВЫ издеваетесь. Какой был вопрос
Q>Ощущение, что я впустую потратил время. Всего доброго.
Qbit86, На самом деле спасибо за то, что Вы потратили время. Но вы сами полезли в дебри. Мне не нужно одновременное исполнение нескольких копий сборки и т.д. Всё, что мне нужно это один исполняемый файл, на единственном локальном компьютере, выполняемый в единственном экземпляре.
Представьте себе такую проблему. У меня есть 100 человек работающих в разных подразделениях компании. Все эти 100 человек раз в неделю, должны проходить тестирование по акциям компании и процедурам которые они должны в связи с этим выполнять. Люди, в основной массе, вообще не врубаются в ИТ. Я хочу сделать по одному исполняемому файлу на каждый вариант теста. Далее беру один такой файл, вношу в него идентификационную информацию, типа ФИО, Код подразделения, Должность и т.п., и высылаю его человеку. Он его открывает, у него бежит таймер 10 минут на прохождение теста. Он выполняет тест, при этом в файле сохраняются некоторые изменения с результатами его тестирования, и высылает мне этот файл обратно. В Outlook результаты тестирования валятся в отдельную папку, а программа менеджер, просматривает содержимое папки и выдает мне результат. Можно конечно сетевое приложение написать, но затраты труда в разы выше, а денег за это ни кто не даст. Вот поэтому я и спрашиваю, как читать/писать в исполняемый файл. А точнее в внедренный в сборку файл
Re[2]: Можно-ли сделать файл внедренным ресурсом ???
От:
Аноним
Дата:
29.05.10 16:40
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:
PD>Не знаю, как в .NET, но вообще-то файл в ресурсы в Win API добавить несложно, и редактировать ресурсы тоже можно. Для этого там есть BeginUpdateResource — UpdateResource — EndUpdateResource. Если аналогов в дотнете нет, то можно их через PInvoke вызвать.
Я так понимаю, что речь идет о НЕ управляемом коде? Или как А вот даст-ли CLR такое провернуть
Re[3]: Можно-ли сделать файл внедренным ресурсом ???
Здравствуйте, Аноним, Вы писали:
А>Я так понимаю, что речь идет о НЕ управляемом коде? Или как
Код-то неуправляемый, но PInvoke никто не отменял.
>А вот даст-ли CLR такое провернуть
А вызовам Win API вообще-то на CLR наплевать с высокой колокольни. Есть секция ресурсов (если, конечно, дотнетовские приложения хранят их как ресурсы Windows, а не как-то по-своему), к ней есть доступ, а остальное меня не касается.
Здравствуйте, Qbit86, Вы писали:
Q>Здравствуйте, Аноним, Вы писали:
А>>Ощущение, что ВЫ издеваетесь. Какой был вопрос
Q>Ощущение, что я впустую потратил время. Всего доброго.
Я пытался сказать это раньше, но завуалировано. Мне лично просто было скучно.
Здравствуйте, Аноним, Вы писали:
>> Он выполняет тест, при этом в файле сохраняются некоторые изменения с результатами его тестирования, и высылает мне этот файл обратно.
А что мешает после окончания теста прям из программы принудительно отправить email с результатами? Уж его пользователь без доступа на почтовый сервер не сможет подделать.
Re[8]: Прочти Рихтера, третье издание
От:
Аноним
Дата:
29.05.10 22:15
Оценка:
Здравствуйте, alexsoff, Вы писали:
A>Здравствуйте, Аноним, Вы писали:
>>> Он выполняет тест, при этом в файле сохраняются некоторые изменения с результатами его тестирования, и высылает мне этот файл обратно. A>А что мешает после окончания теста прям из программы принудительно отправить email с результатами? Уж его пользователь без доступа на почтовый сервер не сможет подделать.
Политика компании в области безопасности. Можно конечно настроить фильтры на этот счет, но это ещё одна проблема которую надо решить. А вы наверное знаете, как в крупных компаниях решаются такие простые на первый взгляд вещи. Долго, очень долго...
Здравствуйте, Аноним, Вы писали:
А>Политика компании в области безопасности.
хм. Политика безопасности говорите, если у вас там все серьездно, тогда предположу, что на каждом компьютере пользователя стоит антивирус, а если он более или мение вменяемый, тогда, я думаю, он будет бить тревогу, когда один файл exe будет модифицировать тоже файл exe. И все равно, по этой логике, вам придется менять политику безопасности.
Re: Можно-ли сделать файл внедренным ресурсом ???
От:
Аноним
Дата:
30.05.10 05:55
Оценка:
Здравствуйте, Аноним, Вы писали:
А>У меня программа все время пишет и читает XML-файл и это очень неудобно т.к. кроме запускаемого файла приходится ещё таскать с собой и XML-файл. Однако, в VS можно объявлять изображение как внедренный ресурс(Embedded resource). Можно-ли как-то в .NET объявить файл как внедренный ресурс, что-бы все время не таскать его с собой
Файл можно сделать как встроенный, но писать в него не стоит. Тем более на большом предприятии о котором идет речь — залочат антивирусы, если их там еще не установлено, то будут установлены. Огребете проблем.
Если не хотите таскать с собой файл — положите в ресурсы ШАБЛОН файла (с нулями там или еще с чем). Но при старте копируйте его в "Documents and Settings\user\appdata", который можно получить через Environment.GetFolderPath.
Черещ System.Security.Cryptography можно его зашифровать.
Re[10]: Прочти Рихтера, третье издание
От:
Аноним
Дата:
30.05.10 07:39
Оценка:
Здравствуйте, alexsoff, Вы писали:
A>Здравствуйте, Аноним, Вы писали:
А>>Политика компании в области безопасности. A>хм. Политика безопасности говорите, если у вас там все серьездно, тогда предположу, что на каждом компьютере пользователя стоит антивирус, а если он более или мение вменяемый, тогда, я думаю, он будет бить тревогу, когда один файл exe будет модифицировать тоже файл exe. И все равно, по этой логике, вам придется менять политику безопасности.
Да, скорее всего антивирусу это не понравиться В общем будем экспериментировать
Re[9]: Прочти Рихтера, третье издание
От:
Аноним
Дата:
30.05.10 10:31
Оценка:
Здравствуйте, Аноним, Вы писали:
А> А вы наверное знаете, как в крупных компаниях решаются такие простые на первый взгляд вещи. Долго, очень долго...
Откуда нам, мы все в мелких компаниях работаем, поэтому пишем обычную web-страничку (ASP.NET MVC или Silverlight) с вопросами и сохраняем результаты в базу.
Здравствуйте, <Аноним>, Вы писали:
А>Политика компании в области безопасности. Можно конечно настроить фильтры на этот счет, но это ещё одна проблема которую надо решить. А вы наверное знаете, как в крупных компаниях решаются такие простые на первый взгляд вещи. Долго, очень долго...
Политики безопасности и разрешение пересылать исполняемые файлы по почте — оригинально.
... << My edition based on RSDN@Home 1.2.0 alpha 4 rev. 1472 >>
В задаче спрашивается:
Сколько вытечет портвейна из открытого бассейна?
Re[7]: Прочти Рихтера, третье издание
От:
Аноним
Дата:
31.05.10 09:11
Оценка:
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, Qbit86, Вы писали:
Q>>Здравствуйте, Аноним, Вы писали:
А>>>Ощущение, что ВЫ издеваетесь. Какой был вопрос
Q>>Ощущение, что я впустую потратил время. Всего доброго.
А>Qbit86, На самом деле спасибо за то, что Вы потратили время. Но вы сами полезли в дебри. Мне не нужно одновременное исполнение нескольких копий сборки и т.д. Всё, что мне нужно это один исполняемый файл, на единственном локальном компьютере, выполняемый в единственном экземпляре. А>Представьте себе такую проблему. У меня есть 100 человек работающих в разных подразделениях компании. Все эти 100 человек раз в неделю, должны проходить тестирование по акциям компании и процедурам которые они должны в связи с этим выполнять. Люди, в основной массе, вообще не врубаются в ИТ. Я хочу сделать по одному исполняемому файлу на каждый вариант теста. Далее беру один такой файл, вношу в него идентификационную информацию, типа ФИО, Код подразделения, Должность и т.п., и высылаю его человеку. Он его открывает, у него бежит таймер 10 минут на прохождение теста. Он выполняет тест, при этом в файле сохраняются некоторые изменения с результатами его тестирования, и высылает мне этот файл обратно. В Outlook результаты тестирования валятся в отдельную папку, а программа менеджер, просматривает содержимое папки и выдает мне результат. Можно конечно сетевое приложение написать, но затраты труда в разы выше, а денег за это ни кто не даст. Вот поэтому я и спрашиваю, как читать/писать в исполняемый файл. А точнее в внедренный в сборку файл
Тут однозначно сетевая БД и ПО с логином/паролем.
Если за это денег не заплатят — значит такое ПО не нужно.
Мой совет — не беритесь за то, за что не заплатят. А делать изначально на плохих компромисах — это себя компрометировать: а кто это вам такую программу написал? А это вооон тот Вася
Re[11]: Можно-ли сделать файл внедренным ресурсом ???
Здравствуйте, Аноним, Вы писали:
А>Мы с Вами, порыться сможем. А вот пользователи, только блокнотом пользоваться и умеют Просто порыться у них будет масса поводов. Это программа по тестированию персонала. А от результатов тестов, зависит присвоенный сотруднику уровень и соответственно з/п Так что прятать надо подальше, да ещё и шифровать.
Файл хранится на клиентской машине и клиент заинтересован в НСД — очевидно, для такого функционала нужна эцп.
Можно выбрать критически важную часть данных и поставить эцп или хотя бы хэш в отдельном атрибуте.
Заодно решится проблема, кто редактировал xml (чья подпись, тот и автор).
На мой взгляд, здесь стоит решать проблему в корне, не прятать голову в песок.