Войти в систему

Home
    - Создать дневник
    - Написать в дневник
       - Подробный режим

LJ.Rossia.org
    - Новости сайта
    - Общие настройки
    - Sitemap
    - Оплата
    - ljr-fif

Редактировать...
    - Настройки
    - Список друзей
    - Дневник
    - Картинки
    - Пароль
    - Вид дневника

Сообщества

Настроить S2

Помощь
    - Забыли пароль?
    - FAQ
    - Тех. поддержка



Пишет qlman ([info]qlman)
@ 2010-01-30 08:05:00


Previous Entry  Add to memories!  Tell a Friend!  Next Entry
Must die.
Вообще "проблема совместимости" ПО Microsoft сильно преувеличена.

Я не слишком большой программист - так, по верхушкам нахватался, основные профессии другие, но этого достаточно, чтобы хорошо видеть.

Что никаких проблем совместимости с нормально написанными (без хаков API) нет, и софтины для 95 прекрасно работают до сих пор.

А вот когда начинаются абсолютные пути к библиотекам и прочему говну - тут сразу "приложение выполнило недопустимую операцию" и все вытекающие.

Но это руки кодеров, а не MS.

PS: Хотя руки MS малость есть - что это вообще за сообщение: "приложение выполнило недопустимую операцию". Если она недопустимая - то и не надо её давать выполнять. Намного позитивней будет сообщение "приложение попыталось..."


(Добавить комментарий)


[info]galeonis@lj
2010-01-29 22:17 (ссылка)
...но соснуло хуйцов и будет выпилено.

(Ответить)


[info]brmail@lj
2010-01-29 22:31 (ссылка)
В самом деле все несколько не так. Точнее уже не совсем так. Некие проблемы наблюдаются даже невооруженным глазом.
Ранее при установке софта на win xp было такое простое правило - если требуется поставить несколько разных пакетов продуктов, то инсталировать их надо в порядке выхода на рынок.
те поставить операционку, потом вижуал студию 6, потом офис 2003, потом накатить на них сервис паки, потом поставить клиент к sql серверу 2005, а там уже и студию 2008 можно.
Осенью переставлял себе с нуля операционку в лаптом (поддался и поставил w7) и правило не сыграло.
Те sql cервер 2005 (клиентская часть) поставить просто не удалось. сосвсем. Давал ошибку при инсталяции в каких то амемблях и откатывал тут же все что поставил. Протрахался несколько часов и поставил 2008 сервер. Ложечки как говорится нашлись, а осадок остался

(Ответить) (Ветвь дискуссии)


[info]brmail@lj
2010-01-29 22:33 (ссылка)
собственно я это к тому, что при росте сложности инсталяции не все автоматические пакеты могу все правильно сделать. А тенденция к усложнения явно наблюдается . Дотнет с его side by side execution вещь классная, и dll hell она победила по своему, но временами цена этого может и зашкалить

(Ответить) (Уровень выше)


[info]qlman@lj
2010-01-29 22:41 (ссылка)
Начнём с того, что SQL сервер вообще не должен никому работать на десктопе. :)

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]brmail@lj
2010-01-29 23:04 (ссылка)
здрасьте вам. Клиентская часть именно там и должна работать

(Ответить) (Уровень выше)


[info]qlman@lj
2010-01-29 22:44 (ссылка)
И вообще XP вышла девять лет назад. Что ты хочешь от старушки?

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]brmail@lj
2010-01-29 23:05 (ссылка)
ты меня невнимательно читаешь - ставилось все на семерку. свежепоставленную. для себя любимого, так что ставилось аккуратно.

(Ответить) (Уровень выше)


[info]mitrich_n@lj
2010-01-30 05:47 (ссылка)
а для вин7 надо знать другое простое правило, не ставить в програм файлс, и все будет работать

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]boza_revenge@lj
2010-01-30 06:23 (ссылка)
Следующее простое правило - "не ставить"? ;)

(Ответить) (Уровень выше)


[info]ext_156133@lj
2010-01-30 08:26 (ссылка)
Ничего более глупого я не слышал. Всё необходимо ставить в Program Files. просто для тех программ, которые хотят писать в свою папку проставить разрешение.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]mitrich_n@lj
2010-01-30 10:25 (ссылка)
ага , а потом тупому юзеру обьяснять по телефону как поставить разрешения, нет уж .. увольте..

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]ext_156133@lj
2010-01-30 12:34 (ссылка)
Ну, во-первых, таких программ я уже давно не видел. Вроде бы все работают нормально.
Во-вторых, объяснять, как устанавливать не в Program Files всё равно придётся.
В-третьих можно наложить разрешение с принудительным наследованием дочерних элементов один раз на всю папку Program Files (как например у меня) сразу после установки.

Но плодить папки для программ - это просто ерунда.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]mitrich_n@lj
2010-02-01 05:52 (ссылка)
1. таких программ куча
2. это гораздо проще, чем обьяснить как разрешения даются, не?
3. а вот это плохо, ибо сделано это не просто так

(Ответить) (Уровень выше)


[info]brmail@lj
2010-01-30 13:21 (ссылка)
а причины такого есть?

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]qlman@lj
2010-01-30 13:23 (ссылка)
Видимо, речь о том, что семёрка не даёт всякой хуйне писать в програм файлс. Хотя чего туда писать прямыми руками написанной софтине - я не знаю.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]mitrich_n@lj
2010-02-01 05:49 (ссылка)
ну например , просто изменить настройки в своем же файле .ini ))

(Ответить) (Уровень выше)


[info]mitrich_n@lj
2010-02-01 05:47 (ссылка)
выше ответили... иначе оч часто приходиться давать права на эту папку

(Ответить) (Уровень выше)


[info]boza_revenge@lj
2010-01-30 06:21 (ссылка)
(с прищуром) А деньги за 2008 сервер заплатили? ;)

(Ответить) (Уровень выше)


[info]inform_sega@lj
2010-01-31 06:08 (ссылка)
Немного из личного опыта.
Работаю над софтиной, OpenGL-окошки внутри MDI-интерфейса.

Последний релиз должен был работать под Win7, и по воле случая все найденные проблемы несовместимости достались мне.

Оказалось, что:

1) 75% проблем заключались в кривости нашего софта. В Win7 менеджер памяти отличается от менеджера памяти XP, и благодаря этому вспылили все ранее замаскированные ошибки:
а) отсутствие инициализации переменных
б) удаление объектов, а потом работа с указателями на "трупы"

В Windows XP просто "везло", и генерируемые эксепшены перехватывались стандартными обработчиками.


2) 25% оставшихся проблем - в криво реализованном товарищами из Microsoft видеоменеджере. дело в том, что в Vista и Windows 7 по умолчанию используется принципиально новый режим рисования на экране. Если раньше этим занимался драйвер видеокарты, то теперь появилась ещё одна прослойка, которая отдельно работает с классическими GDI-окнами и с ускоренным видео (окна в режиме OpenGL и DirectX). Эти два типа окон рисуют в собственные буферы, которые склеиваются видеоменеджером.

Найденные ошибки в ОС:
а) если в диалоге есть два дочерних окна, одно из которых OpenGL, а другое - GDI, то Z-windows-buffer игнорируется, и GDI окно всегда выводится поверх OpenGL. В Windows XP, сесна, было всё нормально.

б) в режиме Aero при появлении MDI Child-окна, внутри которого содержится OpenGL-окно, СНАЧАЛА появляется мусор из GDI-буфера, и только потом у OpenGL-окна появляется шанс его перерисовать собственным изображением

в) в режиме Basic (т.е. с отключенным Aero) если поверх OpenGL-окна есть диалог, то в него с сообщением WM_PAINT приходит неверная информация об обновляемой области. Приходится делать Invalidate() всей зоны.

Может, конечно, что формулировка этих трёх проблем звучит дико и неестественно, но в нашем редакторе с этим были связаны самые распространённые операции.

Так что не всё гладко в буржуйском королевстве...

(Ответить)