Форум » АРМ "Клиент" АС Клиент-Сбербанк » Как понять отчего не работает программа на компьютере? » Ответить

Как понять отчего не работает программа на компьютере?

Mike666: Не претендуя на истину в последней инстанции, давно хотел написать на эту тему, но... то лень, а чаще просто времени свободного не хватает. Пошарившись на форумах, почитав "вопросы" и "ответы", что-то мне совсем взгрустнулось и стало понятно, что пора всё же наступила. Особенно после недавнего "радиообмена" с "сисадмином" клиента: К: - После установки новой версии выдаёт ошибку "wintrust.dll required library not found"! Посмотрел, в каталоге Windows\System32 этот файл есть, чего ему надо? Я: - Забавно! Сколько лет у Вас Windows на компьютере стоит? К: - Да лет 7 уже! И всё было хорошо! А теперь - вот такое! Что у вас за программа? Я: - Не в программе проблема, а в Windows. К: - Windows нормальная! Столько лет стоит и всё прекрасно было! Я: - А Вас не смутило, случаем, почему я сразу спросил, давно ли она установлена? К: - Да причём тут Windows??? Я: - Начнём с того, что wintrust.dll отвечает за связи между OLE-объектами, а так же правильную работу интерфейса API. У Вас библиотеки OLE разрегистрированы в Windows, их нужно по новой зарегистрировать через regsvr32. К: - Это как? И что регистрировать? Я: - Уффф... Какой у Вас Internet Explorer? К: - А он-то тут причём??? Я: - Все Ваши ошибки можно исправить просто переустановив IE или поставив более новый. К: - Так Ваша же программа выдаёт ошибку! А если я Firefox обновлю? Я: Это не "обычный юзер". Программер. Сисадмин. Он даже не удосужился посмотреть список библиотек OLE. Но уверен в своей непогрешимости. Потому что не знает. А может и не хочет. Посему пост не для программеров. Для самых обычных юзеров. А программеры пусть добавляют свои замечания. Думаю, что отделим "мух от котлет". Ну и опытом заодно обменяемся. Сразу оговорюсь, что не делю операционки на "правые" и "левые". Вдоволь наэкспериментировавшись в своё время с Win4 Server (филиальские сервера), переделав их в русскую версию, "растянув" системный раздел до 8 Гб, полностью утвердился во мнении, что в "умных книжках" не то чтобы нам чего-то не договаривают, а вообще многое не сообщают. В "правые" сборки софтверные компании напихивают до дури всяких 30-тидневных "вкусностей", которые потом с корнем не выдрать, в "левые" - авторы так же иногда норовят какую-нибудь гадость подсунуть, либо так "упростить" свою сборку (типа последних сборок Zver), что она только под игры и годится. Начнём с "обновлений Windows". Я их ставлю. Не все. Но полный набор обновлений с собой всё же таскаю. Под Windows требуется ~5 Гб свободного места. Есть такая программа, как WSUS Offline Update (Update Microsoft Windows and Office), которая просто таскает все действующие обновления на текущий момент с сайта Microsoft в указанный для "складирования" каталог и расскладывает их ещё и по подкаталогам. В переводе на русский интерфейс оболочка, на мой взгляд, не нуждается, нужно быть просто внимательным, расставляя "крыжики". Обновления требуются под определённую Windows (и язык!), а не под все существующие. Если обновления требуются для записи на DVD, то ставится "крыжик" в поле "Create ISO image(s)" ("сожрёт" ещё ~5 Гб). Заполучите зараз все эти "злободневные" "обновления корневых сертификатов", MDAC и даже DirectX от 2010 года. Можно "повытаскивать" обновления и для MSOffice. Создаёт и лог-файл - download.log, в котором честно призаётся, что и откуда "стырено". В общем, обычная "качалка" через FTP для обновлений Microsoft. Обновляется. Но редко. Недавно в ней пропала Windows 2000. Как посмотреть, что запущено в текущий момент на компьютере? Можно, разумеется, через "Диспетчер задач", но только много ли в нём информации? Я использую System Explorer. Тоже бесплатная софтина. Есть и более "навороченные", но для моих целей вполне подходит и эта. Есть в ней одно замечательное свойство - если попытаться закрыть "непонятный" системный процесс, а это оказывается некая новая системная служба, установленная с обновлением Windows, то получаешь не BSOD ("синий экран смерти"), а ругательное сообщение операционки, что "...через минуту Windows будет перезагружена". Корректно. Ну и в "Процессах" SE честно "сдаёт" откуда сей процесс запущен, выводит его описание и название компании, которая написАла этот модуль. БОльшая часть вирусов вычисляется "на месте" вместе со всевозможными необязательными "update"-ами, "Service Manager"-ами от производителей и службами от Skype и ей подобных программ. Вообще-то они и с ярлыка запускаются. С "выключениями" всего этого "безобразия" чуть сложнее. Лично я использую Autoruns от Марка Руссиновича. Нужно помнить, что сия программа способна "положить" систему "на раз", если безумно убирать "крыжики", достаточно посмотреть и разобраться, что у вас в "Logon'e" запускается. Для этого, кстати, System Explorer и пригодится. "Нормального" трояна, кстати, этими махинациями не прибить. Механизм самоконтроля вируса немедленно запишет копию вируса с другим названием и вновь пропишет его в реестре. Вирусы. Штука злобная и забавная. Определить зачастую сложно, но и защита Windows претерпела значительные изменения со времён Windows 3.11, проверяет свои файлы. Трояны обычно пишутся с оригинальными названиями, но даже если и маскируются под процессы Windows (широко известный svchost.exe, в котором вместо буквы "o" английской используется другая расскладка), то не имеют цифровой подписи в файле (снова в System Explorer'e видно в секции "Безопасность"). "Быстрая зачистка" - сначала Cureit'ом (у него очень хорошая самозащита), потом можно прогнать "одноразового Каспера" (если комп заражен, то Каспер 100%-но не запустится), если и после этого запускается "нечто", то "добить" с помощью AVZ. Это я описал вариант, когда на компе "кто-то живёт". Программеры, обычно, используют "Live CD/DVD" для таких целей. Нет идеальных антивирусов, но нет и идеальных вирусов. "Контрольные точки" системы. Делать. Однозначно. Достаточно хотя бы включить "Защиту системы" на системном диске (обычно C:). Чтобы (тьфу-тьфу-тьфу) в случае чего не пришёл какой-нибудь, условно говоря, "приходящий программист" и не переустановил систему с полной потерей всех данных. Видел на крупном предприятии программера, который "лечил вирусы" полным форматированием системного раздела. Не смешно. Поверьте. Четыре раза ездил устанавливать К-Б. "Удаление временных файлов". Эхе-хе... Можно, конечно, создать cmd-файл с незамысловатым содержимым, чистить "временухи" через "Свойства диска", можно "руками" стирать файлы в каталоге для временных файлов. Да только, как показывает практика, всё одно это никто не делает. Посему скачайте Winscrab, бросьте его на "Рабочий стол", время от времени запускайте его и давите кнопку "Очистить". Все "временухи" он не потрёт, конечно, но хотя бы большинство. Вот пока и всё.

Ответов - 4

sb77: Mike666, ты чего вкурил))) Твой доклад на диссертацию тянет минимум, на Нобелевскую премию максимум))) А если серьёзно - кто до конца дочитает, поймёт, кто не дочитает, значит ему и не надо)))

Mike666: Я в отпуск уже хочу! И надоело по телефону объяснять одно и то же!

WatsonRus: Mike666 пишет: Сколько лет у Вас Windows на компьютере стоит? А действительно, причем тут сколько времени Windows стоит? Если она была нормально (правильно и штатно) установлена, и сама Windows от M$, а не сборка от Васи Пупкина, то она хоть сто лет будет работать. P.S. У нас уже 5 лет как установлена. Естественно, что подобных ошибок у нас нет.


Mike666: Вопрос был задан именно из-за ошибки. Если Win нормально установить - то да, будет.



полная версия страницы