Решение проблемы с цветами StarCraft для Windows 7
Вчера решил занятся этой проблемой (с цветами) под Windows 7 64-bit. StarCraft никогда не вис, так что тем у кого виснет советую попробовать обновит драйверы на видео, звук, другие устройства, обновить ОС в конце концов - в одном из последних апдейтов как раз исправили зависание при переходе в спящий режим (очень похоже по описаниям), может это как то связано.
У меня ничего из предложенного тут не работало, кроме taskkill /f /im explorer.exe. Но это радикальное решение. Эта команда убивает все процессы проводника, убивает не только меню пуск и трей, но и открытые папки и прочее. Жутко неудобно. К тому же убийство проводника не лучший вариант. Зная, что это помогает стал искать другой способ.
Первое предположение (оказалось правдой), что глюк с цветами вызывает не explorer.exe вообще, а только то процесс, который отвечает за Shell. Таким образом, если разделить процессы для проводника и Shell, то можно закрыть только меню пуск, панель задач и трей, а открытые папки оставить нетронутоми. Так написал скрипт StarCraft.vbs, который делает тоже самое, но убивает не всё подряд, а только то что необходимо.
Потом я всё же решил попытать поправить это дело с помощью ACT (Application Compatability Toolkit) и к моему удивлению тоже получилось. Так родилось два фикса проблемы с цветами.
ПЕРВЫЙ ФИКС
(С ИСПОЛЬЗОВАНИЕ ACT):
Принцип действия: правит Windows Application Compatability Database устанавливая для всех версий StarCraft режимы DisableDWM, DisableFadeAnimation и фиксы Force640x480x8 и IgnoreAltTab. Сам StarCraft при этом не трогается. В приложенном архиве находится установщик, его исходный текст и SDB файл в папке SRC.
УСТАНОВКА: Перед установкой необходимо снять все галочки на вкладке совместимость для StarCraft. Однократно запустите от имени администратора win7colorfix.exe и нажмите кнопку установить. Исправление применяется мгновенно и для всех версий StarCraft (уже установленных или которые будут ставится в будующем). Исправление никак не затрагивает систему и влияет только на запуск StarCraft.
УДАЛЕНИЕ: В оснастке "Программы и компоненты" панели управления нажмите "Удалить/Изменить" для StarCraft Windows 7 Color Fix.
РУЧНАЯ УСТАНОВКА: В командной строки от имени администратора введите sdbinst -q <путь_к_sdb_файлу>
РУЧНОЕ УДАЛЕНИЕ: В командной строки от имени администратора введите sdbinst -u <путь_к_sdb_файлу>.
ПЛЮСЫ ЭТОГО ФИКСА:
* Используется рекомендованный Microsoft способ решения подобных проблем.
* Не затрагивается система и файлы StarCraft.
* Не изменяется способ запуска StarCraft, изменяется толко реакция системы на запуск StarCraft.exe.
* Не оказывает никакого влияния на другие приложения.
* Мгновенное применение и удаление фикса.
Примечание1: Странно то, что в основном помогает фикс в ACT Force640x480x8. Хотя теже настройки на вкладке совместимости (разрешение 640x480, 256 цветов не помогают, а наоборот всё портят). Также и с DisableDWM помогает только режим в ACT, а аналогичный фикс не помогает.
Примечание 2: Заметил, что на эффективность этого фикса влияют используемые темы визуального оформления.
Примечание 3: Фикс срабатывает не всегда, но в большинстве случаев после его установки старик у меня запускался без глкюков с цветами, что уже хорошо.
Примечание 4: Поскольку по нажатию Alt+Tab цвета портятся, то выставил фикс IgnoreAltTab он блокирует все комбинации, которые сворачивают старик (кроме Ctrl+Alt+Del естественно), чтобы не свернуть стар, случайно нажав на Alt+Tab.
ВТОРОЙ ФИКС
(для тех у кого не работает первый)
ПРИНЦИП ДЕЙСТВИЯ: аналогичен остальным подобным фиксам за небольшим исключением. Используется vbscript и WMI для поиска и завершения процессов explorer запущенных userinit, winlogon или taskmgr, а также тех для которых не удалось определить процесс, который их запустил. После чего запускается StarCraft и по его завершении восстанавливается explorer.exe. Таким образом, меньше шанс убить процесс проводника отвечающий за открытые папки (он запускается svchost).
УСТАНОВКА:
1. Для начала необходимо указать системы, что папки надо открывать в отдельном процессе проводника. Это делается так: Панель управления -> Оформление и персонализация -> Параметры папок -> Вид. Ставим галочку напротив "Запускать окна с папками в отдельном процессе" (эта настройка существенно повышает стабильность работы системы, так что не знаю почему она не стоит по умолчанию).
2. Перезагружаем компьютер.
3. Копируем StarCraft.vbs в папку с StarCraft.
4. Запускаем StarCraft двойным кликом по StarCraft.vbs.
ПЛЮСЫ:
* Никаких окон компандной строки.
* Скрипт легко поправить, посмотреть принцип действия и изменить.
* Безопаснее, чем exe, который может делать что угодно без вашего ведома.
* Скрипт старается не закрывать окна с папками отличие от bat файла (хотя алгоритм в теории может ошибаться - не нашёл как vbs работать с окнами, через exe бы получилось, но тогда бы потерялась наглядность и простота редактирования).
ТРЕТИЙ ФИКС
(для версии 1.16.1)
Нашёл в Интернете, по адресу: http://www.sevenforums.com/gaming/5...rosoft-way.html
Для 64 битной системы в прикриплённом reg файле надо заменить:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectDraw\Compatibility\Starcraft116] на [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DirectDraw\Compatibility\Starcraft116]
Всё оказалось так просто и замечательно работает, даже Alt+Tab :-) Только на заставке цвета немного портятся.
ЧЕТВЕРТЫЙ ФИКС
(для любой версии)Дополнил [7x]~Zer@tuL~ 19.11.12
Софтина вышла в 2010 году, на момент написания основной статьи её еще не было.
Есть такая замечательная программка: DirectDraw Compatibility Tool.
Предназначена для решения проблем с искажением цветовой палитры в старых играх (StarCraft, Fallout и другие великие игры второй половины 90-х).
Искажение происходит из-за проблем совместимости графического интерфейса Windows Aero с играми, рассчитанными на работу под DirectX 7 DirectDraw, или более старую версию DirectX.
В Windows Vista и Windows 7 имеются встроенные средства обеспечения совместимости с такими играми, но для функционирования этого режима необходимо внести информацию об exe-файле игры в соответствующий раздел реестра. DirectDraw Compatibility Tool позволяет полностью автоматизировать создание правил совместимости.
Выкладываю я это всё, чтобы не пропадало. В надежде, что кому-нибудь пригодится:
Скачать StarCraft Win7 Color Fix (все четыре фикса, одним архивом)
Статья написана: 2010-02-04 00:10:27
Прочитано раз: 188173
Последний: 2024-04-19 03:45:54
ip: 92.61.66.*
ip: 89.218.5.*
ip: 95.84.139.*
ip: 46.118.54.*
ip: 77.87.207.*
ip: 89.21.73.*
1 создаем тхт файл
2 копурем
====================================== =
@ECHO OFF
taskkill /f /IM explorer.exe > NUL
StarCraft.exe
choice /N /T 2 /C 7 /D 7 > NUL
start /B explorer.exe
========================== =============
3 переименовываетм в бат
4 ложим в папку с ехе
5 запускаем
и не нужно запускать всякие сомнительные ехе фиксы
ЗЫ незачто
ip: 82.151.214.*
Использовал второй фикс - помогло.
Цвета теперь в полном порядке.
Спасибо еще раз.) ) )
ip: 93.188.185.*
ip: 178.90.229.*
Новичок
ip: 78.106.162.*
ip: 95.58.207.*
ip: 94.73.248.*
ip: 90.190.250.*
ip: 91.124.177.*
ip: 188.122.242.*
=(
Помог 3-й фикс !!!!
Новичок
Пуск\Выполнить\regedit и удалить указанный в описании параметр. [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\D irectDraw\Compatibility\Starcraft116] или [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node \Microsoft\DirectDraw\Compatibility\Star craft116]
> Также помогает убить процесс Explorer на время игры. Остается Alt+Tab.
Второй фикс именно это и делает, только старается не закрывать открытые окна с папками, если может.
Alt+Tab отрубает первый фикс (и только для StarCraft). Его удаление возвращает Alt+Tab.
К тому же можно нажать CTRL+ALT+DEL выбрать диспетчер задач и Alt+Tab будет работать (до активации StarCraft).
Можно также поставить ACT http://www.microsoft.com/downloads/detai ls.aspx?familyid=24da89e9-b581-47b0-b45e -492dd6da2971&displaylang=en и удалить из SDB файла IgnoreAltTab и переустановить его
Новичок
Новичок
Местный
StarCraft.exe ddemulate
Взято отсюда:
http://www.staredit.net/topic /8620/