Здравствуйте, Baiker, Вы писали:
B>Категорически не согласен. Было бы ВРЕМЯ ОДИНАКОВОЕ, тогда да — "совместимость". На деле "маскировочный" SysWOW64 работает независимо, что и показала практика.
В каком смысле маскировочный? Это другая папка с другими файлами, которую и должна запрашивать 32-битная программа. Но если она лезет в System32, где ей делать нечего, ей всё равно подсовывают правильную.
Здравствуйте, Baiker, Вы писали:
S>>Если тебе нужно зачем-то System32, то почему ты не в курсе такого поведения
B>Потому что я НЕ АДМИН?? Ты же тоже не всё в жизни знал, когда лез впервые пробовать? Люди варят пельмени в холодной воде не потому, что тупые — просто такая инфа весьма специальная, узнаёшь только после прилетания грабель.
Предполагается, что если ты программист, то ты читаешь документацию на то, с чем работаешь; а не обучаешься методом скачек по граблям.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Он и должен работать независимо, это другой каталог с другими файлами. То что ты зачем то заточил логику на время последнего обновления system32 — твоя проблема. НС>У тебя, кстати, в твоем коде таки и написано константой, @"C:\Windows\System32"?
Я помню когда-то давно, где-то во времена XP так получилось, что у меня был комп, без диска C. Даже не помню почему так получилось. Но не было и не было, почему бы и нет. Винда стояла на H: соответственно.
блиин, это ж сколько разных программ там или вообще не запускалось или падало где-нибудь в процессе вдруг... Сразу становилось видно, что вот тут автор все лучше всех знает как должно и правильно, и нечего читать что там пишут в документации от microsoft, все равно там все тупые и ничего не знают.
Здравствуйте, fmiracle, Вы писали:
F>Я помню когда-то давно, где-то во времена XP так получилось, что у меня был комп, без диска C. Даже не помню почему так получилось. Но не было и не было, почему бы и нет. Винда стояла на H: соответственно.
Это можно сделать и сегодня тоже с тем же результатом
Да даже не нужно винду ставить на другой диск, достаточно хотя бы профиль пользователя вынести отдельно и уже будут проблемы не говоря про другие директории.
Здравствуйте, Baiker, Вы писали:
B>Я не знаю, насколько "переход на 64 бита" был тяжел для мелкософта, но вот это "c:\Program Files\", "c:\Program Files (x86)\", "C:\Windows\System32", "c:\Windows\SysWOW64" — маразм чистой воды и ГРАБЛИ на всю оставшуюся жизнь. Только придурок мог так "изящно" замаскировать венду для 32-битных прог. B>Короче, программируйте и оглядывайтесь, не прилетит ли вам очередным граблями в лобешник!
Вы можете на это смотреть как хотите, но то решение которое в итоге было принято позволяет работать 32-битным программам даже сегодня.
Кстати, в ARM64 сделано по похожему принципу и позволяет не переписывать программы x86.
Более того, есть даже способ запускать 16-битные приложение или даже запускать 16-битный установщик в самой современной системе.
Одна из причин в таком решение это то, что нет переменной среды с system32.
Можно ли было сломать совместимость и сделать "всё правильно" ?
Можно конечно, но тогда будет достаточно недовольных пользователей, по видимому включая вас, у которых всё работало, а теперь перестало.
Некоторые операционные системы так и работают, раз в несколько лет всё, что вы купили просто перестаёт работать.
И вам остаётся надеется, что разработчик нужных вам программ был заинтересован переписывать.
Вам такой подход нравится больше ?
Уже объяснили, спасибо. Ну сделал как сделали. Сделали бы по-другому, у других людей по-другому бы сломалось. Я так понимаю, они хотят, чтобы и программы 32/64 битные работали "бесшовно", и чтобы для перехода на 64 бита достаточно было бы перекомпилировать программу, даже если в ней захардкодено "C:\Windows\System32". Мне тоже кажется странным всё это, по-мне правильно было бы сделать C:\Windows\System64 для 64-битных библиотек и всё, но, очевидно, я над этим решением думал 5 секунд, а архитекторы микрософта гораздо дольше, раз сделали как сделали, значит причины были весомые.
Здравствуйте, vsb, Вы писали:
vsb>Уже объяснили, спасибо. Ну сделал как сделали. Сделали бы по-другому, у других людей по-другому бы сломалось. Я так понимаю, они хотят, чтобы и программы 32/64 битные работали "бесшовно", и чтобы для перехода на 64 бита достаточно было бы перекомпилировать программу, даже если в ней захардкодено "C:\Windows\System32". Мне тоже кажется странным всё это, по-мне правильно было бы сделать C:\Windows\System64 для 64-битных библиотек и всё, но, очевидно, я над этим решением думал 5 секунд, а архитекторы микрософта гораздо дольше, раз сделали как сделали, значит причины были весомые.
Думаю, их остановила необходимость в таком случае тотально заменять 32 на 64 для всех переводимых в 64 бита программ и их DLL.
Здравствуйте, fmiracle, Вы писали:
F>блиин, это ж сколько разных программ там или вообще не запускалось или падало где-нибудь в процессе вдруг... Сразу становилось видно, что вот тут автор все лучше всех знает как должно и правильно, и нечего читать что там пишут в документации от microsoft, все равно там все тупые и ничего не знают.
Ну так из-за такого кривого софта МС и вынужден был замапить system32 на другую папку. Вот та памятная 64битная ХР как раз была без кучи таких фокусов. В результате она была весьма специфической, применимой в очень особых случаях, так как куча 32-битного софта под ней не работала.
F>>блиин, это ж сколько разных программ там или вообще не запускалось или падало где-нибудь в процессе вдруг... Сразу становилось видно, что вот тут автор все лучше всех знает как должно и правильно, и нечего читать что там пишут в документации от microsoft, все равно там все тупые и ничего не знают.
НС>Ну так из-за такого кривого софта МС и вынужден был замапить system32 на другую папку. Вот та памятная 64битная ХР как раз была без кучи таких фокусов. В результате она была весьма специфической, применимой в очень особых случаях, так как куча 32-битного софта под ней не работала.
По-моему WOW64 был на всех 64битных версиях, т.е. на winxp тоже.
B>Я не знаю, насколько "переход на 64 бита" был тяжел для мелкософта, но вот это "c:\Program Files\", "c:\Program Files (x86)\", "C:\Windows\System32", "c:\Windows\SysWOW64" — маразм чистой воды и ГРАБЛИ на всю оставшуюся жизнь. Только придурок мог так "изящно" замаскировать венду для 32-битных прог. B>Короче, программируйте и оглядывайтесь, не прилетит ли вам очередным граблями в лобешник!
Здравствуйте, Baiker, Вы писали:
B>Я не знаю, насколько "переход на 64 бита" был тяжел для мелкософта, но вот это "c:\Program Files\", "c:\Program Files (x86)\", "C:\Windows\System32", "c:\Windows\SysWOW64" — маразм чистой воды и ГРАБЛИ на всю оставшуюся жизнь. Только придурок мог так "изящно" замаскировать венду для 32-битных прог.
Кстати, если на то пошло, то можно вспомнить происхождение system32
В 16-битной Windows был \windows\system. Он и сейчас есть, только в нем почти ничего нет. А тогда там были системные файлы.
Создавая 32-битную Windows, MS оставила этот каталог в покое, а для 32-битных программ сделала system32.
А теперь представьте себе на минуту, что 16-битной Windows не было бы вообще. Тогда, очевидно, для хранения системных файлов использовался бы \windows\system — зачем еще число добавлять ?
Так бы и жили. А при переходе к 64-битной Windows , естественно, имя этого каталога менять не стали бы — с чего ради ? Придумали бы способ разграничить доступ средствами ОС. Что и было фактически сделано.
Здравствуйте, Baiker, Вы писали:
B>Потому что я НЕ АДМИН??
Зато бравада из тебя так и прёт, а как реальная ситуация настала — так сразу не админ, и вообще мопед не твой. Ты уж определись, кто ты — или Лев Толстой или ...
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Это вполне известное поведение, еще со времен 64-битной ХР. Странно что ты не знал. Куда интереснее почему у тебя при этом было разное время.
Так каталоги разные. В один что-то записали, в другой — нет.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, Baiker, Вы писали:
B>Я не знаю, насколько "переход на 64 бита" был тяжел для мелкософта, но вот это "c:\Program Files\", "c:\Program Files (x86)\", "C:\Windows\System32", "c:\Windows\SysWOW64" — маразм чистой воды и ГРАБЛИ на всю оставшуюся жизнь. Только придурок мог так "изящно" замаскировать венду для 32-битных прог.