Kravchenko's profileТехноблогPhotosBlogListsMore Tools Help

Blog


    6/27/2008

    РидМи читать - не барское занятье...

    User Будучи постояльцем форума OSzone.net на протяжении последних пяти лет, не перестаю удивляться человеческой лености, которая в первую очередь вредит самому же нелюбознательному посетителю. Я не говорю о прочтении правил конференции, это делают наверное единицы сразу и чуть больший процент тогда, когда их ткнут носом в ссылку на правила. И даже не о поиске, притча во языцех на любой конференции - "в поиск"; из новичков, задающих вопрос на конференции лишь малая часть предварительно его используют. Мне кажется это странным, ведь задавая вопрос человек по сути соглашается ждать решения или ответа, он ведь отдает себе отчет, что ответ не последует мгновенно, а соль в том, что вопросы одинаковые по своей сути всплывают очень часто и достаточно было бы потрать десять секунд на составление поискового запроса и уже получить ответ.
    Очень часто приходится наблюдать более запущенные случаи примерно по такой схеме

    1. Вопрос: как сделать то-то
    2. Ответ: читайте в этих темах (ссылки на темы 1, 2, 3)
    3. Ответ автора темы: там не понятно ничего; это не мой случай; это не помогло
    4. Ответ: попробуйте так: (тут вставляется скопированное из первой же ссылки, предложенной выше)
    5. Ответ автора темы: ура! помогло
    Более частый вариант когда до п. 5 набивается десятка два сообщений, а в итоге решение оказывается то же, что и в сразу предложенных темах. Но когда указываешь человеку, что решение давали уже, то зачастую это порождает еще и бурю возмущения, мол, "я же вам не программист".. при чем здесь программирование не понятно, всего-то и нужно, что выполнить пошаговую инструкцию, неужели это так сложно среднестатистическому пользователю...
    А ведь такие случаи я наблюдаю с завидным постоянством, всплывают не реже пары раз в неделю и это, надо заметить, лишь в тех форумах конференции, к которым я проявляю интерес.
    Написаны сотни страниц инструкций, предложены тысячи ответов на тысячи вопросов, но этого мало :) Я допускаю, что большинство посетителей все-таки находят ответы на свои вопросы самостоятельно, а задают их если уже если ответа не нашлось, да только впечатление обратное, кажется, что человек после успешной регистрации тут же ищет кнопку создания новой темы, бегом причем, зажмурившись.
    Подвид не желающих читать готовые ответы - ожидающие решения именно под себя, именно для своего случая и решение идентичной задачи не воспринимают в упор, такому если укажешь на решение, где нужно скопировать, допустим, какой-то файл и указан путь C:\Windows, то он скажет "не помогло", почему? Да просто нет у него папки C:\Windows, у него там C:\WINNT. Утрирую немного, но факт остается фактом из последних вспоминается тема, где человеку нужно было содержимое файла boot.ini по умолчанию, естественно дали и ссылки на аналогичные темы и ссылку на статью kb289022, что же мы получили? Ответ в стиле "что вы мне парите, это не тот случай и статья ваша мне не подходит" - все в недоумении... Оказывается в образце файла boot.ini, используемого по умолчанию на компьютерах под управлением Windows XP указано (о ужас!) ...WINDOWS="Microsoft Windows XP Professional", а у нашего бедолаги установлена Windows XP Home, всё, аут, решение не то. Даже после того как приводится цитата из той же статьи об ОС, к которым она применима, получили еще более обескураживающий ответ, приведу цитату с вырезками: "Странные вы люди, компьютерщики, программисты и т. п. ... ... Интересно, для кого вы создаете такие форумы? Для своих коллег? Тогда не пускайте на них посторонних, если не хотите ответить на конкретный вопрос. А так целый день убил, ответа у Вас не получил, да еще и в дерьмо окунули." Ну прелесть просто :)
    Таких примеров десятки, наверное даже сотни, все они забавны с одной стороны и навевают грусть и озабоченность развитием элементарных навыков пользователей с другой стороны.

    Надежда меня не покидает, я все же верю, что развитие человечества оказывает влияние и на развитие наших пользователей. Будьте чуточку внимательнее, имейте чуть больше желания разобраться в ситуации, а не полагаться на лобастого дядьку, который все за вас сделает; и тогда все у нас получится! :)

    6/26/2008

    Добавляем "Выделить все" в меню проводника

    Любителям проводника и не любителям, а просто тем, кто привык в нем работать посвящается :)
    Себя я не могу причислить к армии любителей проводника Windows так как давно и плотно присел на Far Manager, а конкретнее на Far PowerPack. Кто-то скажет, что у него ужасный интерфейс и нет всяких там рюшечек, а для меня и голый фар роднее всех менеджеров, а усиленный PowerPack и того краше. Элементарная скорость и удобство работы сказываются, вот допустим элементарное копирование файла из одной папки в другую не прикасаясь к клавиатуре - контекстное меню - Копировать, переход в нужную папку, контекстное меню - Вставить, в фаре в одной панели исходная папки, в другой целевая - F5 - Enter - всё :) В принципе основная масса пользователей со стажем, не говоря уже об опытных пользователях давно сделали выбор: то ли файловый менеджер какой, то ли остались на проводнике. Между прочим некоторые управляются с проводником ничуть не медленнее чем с файловым менеджером, просто мышедвижений в разы больше :)
    Это отступление, завершаем, теперь к сути, тем, кто пользуется проводником и для файловых операций вполне может сгодиться дополнительный пункт в контекстном меню, позволяющий выделить все файлы/папки в текущей локации. Да, можно нажать Ctrl+A, конечно, но вдруг вы как раз уронили кусок пельмешки на левый нижний угол клавиатуры или обет дали ее не трогать :)
    Нам понадобится архив selectall.zip, который содержит три файла:
    selectall.reg - для добавления пункта контекстного меню
    undo.reg - для удаления пункта контекстного меню
    selectall.vbs - собственно скрипт, отрабатывающий команду

    Итак, помещаем файл selectall.vbs из архива в папку C:\Windows\, затем запускаем файл selectall.reg и соглашаемся с внесением изменений в реестр. Всё.
    selectall1

    Для удаления пункта меню можно воспользоваться файлом undo.reg, аselectall.vbs удалить вручную.

    Файлы

    6/17/2008

    Запуск приложений с повышением прав, но без запроса UAC

    Невзирая на некоторые неудобства UAC, этой функцией пользуются все чаще, тем более в среде организации, где загубленная система и ее последующая переустановка гораздо более неприятна и чревата последствиями чем на домашнем компьютере. Тем не менее регулярный запуск командной строки, оснасток, редактора политик или реестра иногда просто-таки удручает запросом на повышение прав. Для таких регулярных задач и предназначен способ, который я опишу ниже.

    Для запуска с повышением прав и без запроса на это самое повышение мы будем использовать Планировщик заданий.

    • Открываем Планировщик заданий: Пуск - Все программы - Стандартные - Служебные
      Сначала, для удобства, создадим отдельную папку для будущих заданий (в моем случае это папка MyTasks), для этого на папке "Библиотека планировщика заданий" нажмите правую клавишу мыши и выберите пункт "Создать папку"
      shed1
    • После этого перейдем непосредственно к созданию заданий.
      На новой папке по правой клавише мыши выбираем "Создать задачу"
      shed2
    • Указываем имя задачи, допустим "regedit" и в том же окне внизу отмечаем параметр "Выполнить с наивысшими правами"
      shed3
    • Переходим на вкладку "Действия", нажимаем кнопку "Создать" и через кнопку "Обзор" выбираем файл regedit.exe.
      shed4
    • Собственно задача создана, но этого мало, теперь нужно сделать для нее ярлычок, не будем же мы запускать ее каждый раз из планировщика. Для этого воспользуемся стандартной утилитой командной строки schtasks.exe, которая и позволит нам свершить задуманное.
      Создаем новый ярлык (на рабочем столе или в панели быстрого запуска - как вам удобнее) и в строке размещения объекта указываем следующую строку
      schtasks.exe /run /tn regedit
      Где regedit = имя добавленного в планировщик задания.
      Синтаксис, поддерживаемый утилитой schtasks.exe вы можете узнать по команде schtasks /?

    Отталкиваясь от этого примера можно создать ярлыки для запуска различных оснасток, которые используются чаще других, но с оснастками MMC нужно учитывать одну особенность, а именно: при создании задания в планировщике в окне указания действия для задачи нужно указывать следующим образом

    mmc.exe services.msc

    В данном примере это строка запуска оснастки Службы.

    Вот список некоторых оснасток, которые чаще всего используются (у меня по крайней мере :)

    Оснастка Описание
    gpedit.msc Редактор групповой политики
    secpol.msc Редактор локальной политики
    lusrmgr.msc Локальные пользователи и группы
    services.msc Службы
    diskmgmt.msc Управление дисками
    compmgmt.msc Управление компьютером
    fsmgmt.msc Общие папки
    perfmon.msc Монитор надежности и производительности
    eventvwr.msc Просмотр событий
    certmgr.msc Сертификаты
    msconfig.exe Настройка системы
    control schedtasks Планировщик заданий
    wmimgmt.msc Инфраструктура управления
    utilman.exe Диспетчер служебных программ
    6/9/2008

    Windows Vista и медленная работа в сети

    speedometer Уже неоднократно на форуме поднимался вопрос о медленной работе в сети компьютера под управлением Windows Vista, подключенному к домену на Windows Server 2003 (и не только). Зачастую проблема медленной работы в локальной сети или некорректной работы браузеров связана со средствами автоматической настройки TCP, которые направлены на благое, но пока не всегда приемлемы, хотя бы потому, что не всеми поддерживается масштабирование окна TCP или поддерживается, но не разрешены, те же брандмауэры его зачастую не поддерживают. В результате мы получаем потерянные пакеты и как итог негативную скорость работы сети, как локальной так и интернет, а в последнем случае еще и, казалось бы, чрезмерный трафик.
    Во многих случаях отключение этих автонастроек решает проблему и позволяет избавиться от задержек в работе сети не сказываясь негативно ни на чем другом.
    Выполните следующие команды в командной строке, запущенной от имени администратора:

    netsh interface tcp set global autotuninglevel=disabled

    netsh interface tcp set global rss=disabled

    После выполнения этих команд перезагрузите компьютер.
    Дополнительно можно также отключить использование протокола IPv6 в настройках соединения.

    Небольшая подборка MSKB на эту тему: 927168, 932134, 936215, 936594, 940266, 947239.

    "Доступ запрещен" при установке SP3 на Windows XP

    sp3f В случае если при установке SP3 на Windows XP вы получаете ошибки, связанные с отсутствием доступа, вам может потребоваться сбросить разрешения на некоторые файлы и/или разделы реестра. Хотя такие ошибки могут быть вызваны и сторонними программами, например антивирусами и прочими "анти". Естественно перед установкой SP необходимо временно отключать такие программы. Если же дело не в них, то может понадобиться сброс разрешений.
    Прежде чем продолжить убедитесь, что вам это необходимо - просмотрите лог-файл ошибок установки SP3, который расположен в папке \Windows\ и называется Svcpack.log, откройте его блокнотом и поищите упоминания Access is denied или DoRegistryUpdates failed.

    Для Windows XP Professional можно использовать утилиту командной строки secedit, которая поможет восстановить параметры безопасности по умолчанию. Для этого выполните следующую команду:

    secedit /configure /cfg %windir%\repair\secsetup.inf /db secsetup.sdb /verbose

    Подробнее об использовании secedit можете прочитать в статье Восстановление значений по умолчанию параметров безопасности.

    Пользователи Windows XP Home смогут воспользоваться утилитой Subinacl.exe, которая позволит также сбросить разрешения.
    для использования SubInACL загрузите файл по ссылке, указанной выше и установите Windows Resource Kits. После этого откройте блокнот и скопируйте в новый текстовый документ следующие стрки:

    cd /d “%ProgramFiles%\Windows Resource Kits\Tools”
    subinacl /subkeyreg HKEY_LOCAL_MACHINE /grant=Администраторы=f
    subinacl /subkeyreg HKEY_CURRENT_USER /grant=Администраторы=f
    subinacl /subkeyreg HKEY_CLASSES_ROOT /grant=Администраторы=f
    subinacl /subdirectories %SystemDrive% /grant=Администраторы=f
    subinacl /subkeyreg HKEY_LOCAL_MACHINE /grant=System=f
    subinacl /subkeyreg HKEY_CURRENT_USER /grant=System=f
    subinacl /subkeyreg HKEY_CLASSES_ROOT /grant=System=f
    subinacl /subdirectories %SystemDrive% /grant=System=f


    Сохраните файл как resacl.cmd и запустите его на выполнение. После выполнения перезагрузите компьютер.

    Проблемы спящего режима и режима гибернации после очистки диска

    Hibernate Сегодня столкнулся с этой проблемой: воспользовался стандартной утилитой очистки диска (Disk Cleanup tool), помимо прочего был отмечен к удалению и файл спящего режима. После выполнения очистки режим гибернации пропал из настроек электропитания.
    Произошло это потому, что для удаления файла спящего режима, утилита очистки отключает его использование, соответственно отключая саму функцию гибернации. Следовательно файл спящего режима отключен, функция гибридного спящего режима включена и получаем, что при использовании функции спящего режима состояние запущенных программ и открытых файлов не сохраняются.
    Для решения проблемы необходимо удалить подраздел Hibernation File в реестре по этому пути:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\VolumeCaches\Hibernation File

    Предварительно обязательно сделайте резервную копию этого раздела реестра (меню Файл - Экспорт)

    А затем в командной строке, запущенной от имени администратора, выполнить команду
    powercfg /hibernate on

    6/2/2008

    Пользовательские папки с обычными иконками

    shell_folders Проблема. Пользовательские папки, такие как Документы, Изображения и т.п., отображаются в проводнике с обычными иконками, как и любые другие папки.

    Причина. Такая проблема может быть вызвана отсутствием или повреждением файлов desktop.ini, расположенных в таких папках. Или же эти файлы имеют неправильные атрибуты.

    Решение. В случае если файл desktop.ini присутствует в папке проверьте его атрибуты, должны быть Скрытый и Только чтение, если это не так, установите их. Дополнительно необходимо установить атрибут Только чтение на пользовательскую папку. Для вступления в силу изменений необходимо завершение сеанса.
    В случае если файла desktop.ini нет в папке, его необходимо создать. Каждой из пользовательских папок соответствует свое содержимое этого файла, ниже вы найдете содержимое этих файлов по умолчанию. Естественно, после создания файла, ему необходимо присвоить атрибуты, указанные выше.

    Содержимое файлов desktop.ini для стандартных пользовательских папок

    Документы

    [.ShellClassInfo]
    LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21770
    IconResource=%SystemRoot%\system32\imageres.dll,-112
    IconFile=%SystemRoot%\system32\shell32.dll
    IconIndex=-235

    Изображения

    [.ShellClassInfo]
    LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21779
    InfoTip=@%SystemRoot%\system32\shell32.dll,-12688
    IconResource=%SystemRoot%\system32\imageres.dll,-113
    IconFile=%SystemRoot%\system32\shell32.dll
    IconIndex=-236
    [LocalizedFileNames]
    Sample Pictures.lnk=@%SystemRoot%\system32\shell32.dll,-21805

    Музыка 

    [.ShellClassInfo]
    LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21790
    InfoTip=@%SystemRoot%\system32\shell32.dll,-12689
    IconResource=%SystemRoot%\system32\imageres.dll,-108
    IconFile=%SystemRoot%\system32\shell32.dll
    IconIndex=-237
    [LocalizedFileNames]
    Sample Music.lnk=@%SystemRoot%\system32\shell32.dll,-21806

    Видео 

    [.ShellClassInfo]
    LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21791
    InfoTip=@%SystemRoot%\system32\shell32.dll,-12690
    IconResource=%SystemRoot%\system32\imageres.dll,-189
    IconFile=%SystemRoot%\system32\shell32.dll
    IconIndex=-238
    [LocalizedFileNames]
    Sample Videos.lnk=@%SystemRoot%\system32\shell32.dll,-21807

    Поиски 

    [.ShellClassInfo]
    LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-9031
    IconResource=%SystemRoot%\system32\imageres.dll,-18
    [LocalizedFileNames]
    Indexed Locations.search-ms=@shell32.dll,-32811
    Everywhere.search-ms=@shell32.dll,-32814
    Shared By Me.search-ms=@shell32.dll,-32802
    Recent Music.search-ms=@shell32.dll,-32803
    Recent Documents.search-ms=@shell32.dll,-32804
    Recent Pictures and Videos.search-ms=@shell32.dll,-32806
    Recent E-mail.search-ms=@shell32.dll,-32807
    Recently Changed.search-ms=@shell32.dll,-32813

    Загрузка 

    [.ShellClassInfo]
    LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21798
    IconResource=%SystemRoot%\system32\imageres.dll,-184

    Избранное 

    [.ShellClassInfo]
    LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21796
    IconResource=%SystemRoot%\system32\imageres.dll,-115
    IconFile=%SystemRoot%\system32\shell32.dll
    IconIndex=-173

    Контакты 

    [.ShellClassInfo]
    LocalizedResourceName=@%CommonProgramFiles%\system\wab32res.dll,-10100
    InfoTip=@%CommonProgramFiles%\system\wab32res.dll,-10200
    IconResource=%SystemRoot%\system32\imageres.dll,-181

    Рабочий стол 

    [.ShellClassInfo]
    LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21769
    IconResource=%SystemRoot%\system32\imageres.dll,-183

    Ссылки 

    [.ShellClassInfo]
    LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21810
    IconResource=%SystemRoot%\system32\imageres.dll,-185
    DefaultDropEffect=4
    [LocalizedFileNames]
    Public.lnk=@shell32.dll,-21816
    Searches.lnk=@shell32.dll,-9031
    Recently Changed.lnk=@shell32.dll,-32813
    Music.lnk=@shell32.dll,-21790
    Pictures.lnk=@shell32.dll,-21779
    Documents.lnk=@shell32.dll,-21770

    Сохраненные игры 

    [.ShellClassInfo]
    LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21814
    IconResource=%SystemRoot%\system32\imageres.dll,-186

    Общий рабочий стол 

    [.ShellClassInfo]
    LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21799

    Общие документы 

    [.ShellClassInfo]
    LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21801
    IconResource=%SystemRoot%\system32\shell32.dll,-235

    Общая музыка 

    [.ShellClassInfo]
    LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21803
    InfoTip=@%SystemRoot%\system32\shell32.dll,-12689
    IconResource=%SystemRoot%\system32\shell32.dll,-237

    Общие изображения 

    [.ShellClassInfo]
    LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21802
    InfoTip=@%SystemRoot%\system32\shell32.dll,-12688
    IconResource=%SystemRoot%\system32\shell32.dll,-236

    Общее видео 

    [.ShellClassInfo]
    LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21804
    InfoTip=@%SystemRoot%\system32\shell32.dll,-12690
    IconResource=%SystemRoot%\system32\shell32.dll,-238

    6/1/2008

    Исправление поврежденной боковой панели

    Проблема. На боковой панели (Sidebar) не отображаются гаджеты, а если отображаются, то неправильно.
    cor_sidebar

    Что делать
    . Проблема вероятнее всего связана со "слетевшей" регистрацией в системе некоторых бибилотек. Для решения проблемы выполните следующие действия:

    1. Закройте боковую панель
    2. Запустите командную строку от имени администратора (как это сделать смотрите здесь)
    3. Выполните последовательно команды
      • regsvr32 msxml3.dll
      • regsvr32 scrrun.dll
      • regsvr32 jscript.dll
      • regsvr32 javascript.dll
      • regsvr32 msxml4.dll
      • regsvr32 msxml6.dll
    4. Перезагрузите компьютер и запустите боковую панель

    Убираем ассоциирование типов файлов

    Уже не раз сталкивался с вопросами о том как же убрать ассоциирование определенных типов файлов с определенными программами. Как правило это необходимо когда ошибочно устанавливается параметр "Использовать выбранную программу для всех файлов такого типа" в диалоговом окне "Открыть с помощью". Или это может понадобиться в случае если при не корректном удалении программы остаются ассоциации с файлами на нее.
    file_association1
    Конечно можно попробовать ассоциировать нужные файлы с нужными программами используя все тот же диалог "Открыть с помощью", можно сделать это и в оснастке "Программы по умолчанию", можно и через правку системного реестра, но что же делать если нужно вообще удалить ассоциирование? В этом случае фактически остается только правка системного реестра, но во-первых нужно знать что и где удалять, а во-вторых не для всех это будет простой задачей. А вот через пользовательский интерфейс ни убрать ассоциирование с файлов ни удалить определенные типы файлов не представляется возможным. Я думаю, что такая возможность была убрана чтоб неопытный юзер сам не покалечил систему удаляя там все подряд :)
    Но мы с вами отдаем себе отчет в том, что делаем и вместе с тем хотим, чтоб было удобнее правки реестра. Именно для таких целей и предназначена утилита Unassociate File Types, которая позволяет как убрать ассоциирование типов файлов так и их удаление, как раз то, чего не позволяет сделать система через пользовательский интерфейс.
    file_association2