|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
30.01.2018, 17:23 | #1 |
Спокойный псих
Участник клуба
Регистрация: 19.03.2013
Сообщений: 1,538
|
Повредился файл исходного кода
Здравствуйте.
Вот я уже второй день пишу программу для работы, и по большому счёту - программа уже почти готова. Тут произошла интересная ситуация: я решил добавить функционал, который не позволит запускать дубликаты этой программы (не обязательно, но желательно). В процессе тестирования я словил BSoD. А я всего то из конструктора полез убивать такие же процессы. Но после первой синьки вроде ничего не произошло, проект запустил и погнал выпиливать предполагаемый баг. Запустил программу - и опять синька. Ну то ладно, то что я быдло-говно-кодер - это и так всем известно. Речь не об этом. После второй синьки я попытался открыть проект, и вместо своего кода увидел попытки среды открыть файл в блокноте. В самой среде он открываться не захотел. Открыл файл с кодом в блокноте - и увидел 10 килобайт символов null (notepad++). За сам код я переживал не долго, поднял ILSpy, восстановил. Вопрос такой: что конкретно я сделал не так в коде ? Разве из конструктора (формы) нельзя убивать процессы ? И как это повлияло на файл исходника ?
Подпись ? Не, не слышал ...
|
30.01.2018, 17:51 | #2 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
30.01.2018, 18:17 | #3 |
Спокойный псих
Участник клуба
Регистрация: 19.03.2013
Сообщений: 1,538
|
У меня как то не было времени смотреть, что произошло ... Увидел только то, что дамп памяти занимал какое то время.
Я так понял, что во второй раз код повредился из-за того, что я стартовал отладку под средой разработки. Сейчас подниму виртуаль, посмотрю, что там будет происходить.
Подпись ? Не, не слышал ...
|
30.01.2018, 18:22 | #4 |
Спокойный псих
Участник клуба
Регистрация: 19.03.2013
Сообщений: 1,538
|
Во !
Подпись ? Не, не слышал ...
|
30.01.2018, 18:22 | #5 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Причем тут время? Дамп он на то и создается.
Выше ж ссылка на программу для просмотра данных бсода.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
30.01.2018, 18:27 | #6 |
Спокойный псих
Участник клуба
Регистрация: 19.03.2013
Сообщений: 1,538
|
Код, без которого всё нормально:
Код:
Я подумал было дело в Dispose(), пока перепроверить не успеваю ... Но я раньше так делал преспокойно, где угодно - и всё работало исправно. Типа Dispose() убивает объект, а не процесс. UPD: StartInfo.FileName пустой (ниже обратили внимание), нужно юзать MainModule.FileName.
Подпись ? Не, не слышал ...
Последний раз редактировалось OmegaBerkut; 31.01.2018 в 16:46. |
30.01.2018, 18:36 | #7 |
Цифровой кот
Старожил
Регистрация: 29.08.2014
Сообщений: 7,629
|
Чувак, ты изобрёл функцию, вызывающую BSOD? Да ты же гений!
Перепиши на С++, с меня пиво! Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
|
30.01.2018, 18:54 | #8 | |
Спокойный псих
Участник клуба
Регистрация: 19.03.2013
Сообщений: 1,538
|
Цитата:
Если серьёзно - что тут не так ? Можете у себя проверить, у вас такая же дичь ?
Подпись ? Не, не слышал ...
|
|
30.01.2018, 19:02 | #9 | |
Цифровой кот
Старожил
Регистрация: 29.08.2014
Сообщений: 7,629
|
Я так подозреваю, что это сарказм.
Цитата:
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
|
|
30.01.2018, 19:34 | #10 |
Старожил
Регистрация: 26.04.2008
Сообщений: 2,645
|
Тогда уж currentProcess убивать, а то это не запрет запуска второй копии, а попытка убить первую, только StartInfo зачем? - Там пусто, в итоге не более чем все процессы умирают.
И вообще, зачем убивать детей? Может проще не дать им родиться используя, например, презерватив или обёртки |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Дан файл вещественных чисел. Создать файл целых чисел, содержащий длины всех убывающих последовательностей элементов исходного файла. Например, для исходного файла с элементами 1.7 | faza9444 | C# (си шарп) | 1 | 27.11.2017 22:23 |
Компиляция исходного кода | vitekrock | Общие вопросы по Java, Java SE, Kotlin | 5 | 05.12.2010 21:24 |
Из исходного кода в Cookies | x852x | Общие вопросы Delphi | 0 | 21.03.2010 13:09 |
Анализ исходного кода | heart | Безопасность, Шифрование | 7 | 31.12.2009 08:26 |
Анализ исходного кода | SwitchMan | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 25.04.2009 18:14 |