Форум » Clipper » Дискета » Ответить

Дискета

Pasha: w2k server, где и находится БД Возникла необходимость на нем запускать эхотажные программы При запуске программы система зачем-то дергает флопик, после чего программа все равно запускается Антивирусов нет К компьютеру давно никто не подходил и ничего нехорошего не устанавливал, он просто стоял включенным Как отключить неприятный эффект ?

Ответов - 34, стр: 1 2 All

Dima: Прога не обращается к флопику ? Может ключевая дискета ищется или что то в этом плане.

Pasha: нет конечно прога только открывает БД, путь указывается в настройке, флопика там и в помине нет на флопик лезет ОС а что она там забыла непонятно

Григорьев Владимир: Попробовать открыть проводник и выбрать диск C:. Система где-то запомнила (может быть в реестре), что последнее обращение было к дискете. Обычно это происходит, когда через проводник смотрят дискету, а затем выключают комп.


suv: в дос машине есть понятие умалчиваемый каталог на некоем устройстве предполагаю, что в данном варианте винды она до старта дос-машины заполняет соответствующие дос-структуры то есть тупо лезет на A: и спрашивает там CURDIR() :-)

Pasha: Проблема так и осталалась нерешенной Причем это касается не только клиппер (win16) программ Харбор-программы ведут себя так же Хотя delphi-программа (там есть какая-то) запускается без обращения к флопику И стандартные программы тоже А что с моими не пойму В реестре сделал глобальный поиск, вычистил все где встречается "a:" В Documents and Settings убрал все *.lnk в теле которых увидел "a:\" Не помогает Что это может быть ?

Dima: Переменную path смотрел ?

Pasha: Да, конечно Все стандартные проверки сделал, нигде ни в bat, config.sys и пр. ссылки на флопик нет В автозагрузке ничего нет Recent files тоже чистый Так запускаются не только мои программы, а и еще некоторые, систему понять трудно

suv3: Не помогает Что это может быть ? Паша. Я же уже отвечал, что это. Это умалчиваемый каталог, который слишком усердно пытается определить операционная система. Если память не изменяет, в первых версиях ХР было то же самое. Потом пофиксили. Проявлялось на любых дос-программах. Например, если запустить Volkov commander и (находясь на диске C:) нажать AltF1, он должен показать список дисков (букв, драйвов). В w2k при этом дергался дисковод и мигал лампочкой. Как и почему это происходит? Самая простая методика определения доступности буквы была такая: сменить текущий диск (например C:) на диск X: Затем считать текущий диск. Если диск сменился на X: - значит диск X: доступен в системе. Если текущий диск остался C: - значит диска X: нет. Этим способом пользовались все программисты (не только клиперрные - вообще все. ), ибо копаться в структурах дос - очень геморройно. Беда w2k и/или первых версий ХР была в том, что при смене текущего диска на A: они выполняли физическое обращение к дисководу, чего конечно не требуется. Скорее всего (другой причины не видно) для того, чтобы при смене диска на другой проверить и в случае необходимости изменить текущий умалчиваемый путь. Возможно, это было пофиксено в каких-то обновлениях w2k. Но вот только что на первой попавшейся машине с w2k при нажатии AltF1 я сейчас увидел такой эффект. Можно, конечно, попытаться закачать все доступные обновления - вдруг поможет. На WinXP такой ошибки нет. В первых версиях по-поему было. Все это можно легко проверить. Напиши функцию, которая возвращает текущий диск и устанавливает новый. Попробуй сменить диск на A: В w2k - дисковод будет дергаться. В WinXP дисковод нет. И это правильно. Зачем его дергать? Я ничего на дисководе не читаю, я только говорю досу, что все текущим диском теперь будет являться диск A: А Дос должен всего-навсего изменить переменную в памяти, которая хранит номер текущего диска.

Pasha: w2k, установлена sp4, больше sp кажется не выходило Но этот эффект у меня и на харбор-программах, которые полностью 32-х разрядные и к дос никакого отношения не имеют Правда запускаю я их через bat-ник Но я пробовал запускать и через *.cmd, эффект тот же Подумалось: может какой-то баг к командном процессоре nt Но как вылечить пока не придумал, а переустановить сервер возможности нет

suv3: Я как-то говорил, что 32х разрядные консольные программы виндовс работают с экраном, с клавиатурой, мышью через дос-программу conagent со всеми вытекающими дос-последствиями. В вин 98 я это видел своими глазами в СофтАйсе. Как в nt-системах - гарантию дать не могу, но не исключаю, что так же.

suv3: Можешь проверить на ФАРЕ. Нажми AltF1 - будет дергаться дисковод, хотя ты просто смотришь список букв

Pasha: suv3 пишет: Я как-то говорил, что 32х разрядные консольные программы виндовс работают с экраном, с клавиатурой, мышью через дос-программу conagent со всеми вытекающими дос-последствиями дык программы то не консольные буду там следующий раз опять буду что-то мучить

suv3: Помнится, конагент все равно запускается, даже в случае запуска 32-хразрядного gui-приложения

suv3: есть интересное решение - выломать флоп + отключить его в биосе с досом все понятно. вопрос - про харбор. Не знаток харбора, вроде он чисто 32х разрядный и компилируется из ASM-ов каким-то компилятором. Следовательно, если ты напишешь минимальную программу на этом компиляторе в его же IDE и с харборовскими опциями компиляции-линковки - должен увидеть такой же эффект. Наблюдается? Про дельфи - наблюдается ли такой эффект на консольном дельфевом прилолжении?

Pasha: как следующий раз туда попаду буду проверять

Pasha: Может действительно достаточно будет в autoexec.nt добавить команду "C:\"

suv3: если у тебя получится сделать приложение на том же компиляторе на его родном си, которое не дергает дисковод - надо сделать такую же обертку вокруг харбора (или просить авторов, уж и не знаю, кто там разработчик)

suv3: Pasha пишет: Может действительно достаточно будет в autoexec.nt добавить команду "C:\" Неа. Я же подробно писал про AltF1 и общепринятый механизм определения наличия драйва (не доступности носителя в нем, а самого драйва)

Сергей Р: Pasha пишет: Но как вылечить пока не придумал, а переустановить сервер возможности нет Может не париться , а заменить "A" floppy на "B"

suv3: Сергей Р пишет: Может не париться , а заменить "A" floppy на "B" думаешь, когда дергается дисковод Б - это приятней? имхо, вместо ААААА!!!! усер будет орать Б%#.....

Сергей Р: suv3 пишет: думаешь, когда дергается дисковод Б - это приятней? suv3 пишет: Это умалчиваемый каталог, который слишком усердно пытается определить операционная система. Так кто же прав , suv3 или suv3 ? Ты наивно думаешь , что весь Windows подвластен твоему пониманию .

suv3: а никаких противоречий в цитатах нет

Сергей Р: Может ты не заметил , но Павел вычищает на компе все ссылки на дисковод "A" Pasha пишет: В реестре сделал глобальный поиск, вычистил все где встречается "a:" В Documents and Settings убрал все *.lnk в теле которых увидел "a:\" и это правильно , потому что любой вшивый ярлык (даже в корзине) ссылающийся на диск "A" может дать эфект дрочения флоппи . p.s. Ты считаешь , что умалчиваемый каталог может быть одновременно и "A:\" и "B:\" ?

Dima: Сергей Р пишет: Может не париться , а заменить "A" floppy на "B" да выключить его на#рен в BIOS и все ;) Вот тут еще в 2005 чел спрашивал и похоже так и не решил трабл http://www.procomputer.ru/forum/index.php?msid=4667

Сергей Р: 2Павел Если антивируса нет , документы Microsoft Office не используются , а BIOS настроен , то попробуй : http://forum.ru-board.com/topic.cgi?forum=62&topic=1642#1

suv3: Сергей Р пишет: p.s. Ты считаешь , что умалчиваемый каталог может быть одновременно и "A:\" и "B:\" ? умалчиваемый каталог есть на ЛЮБОЙ букве. То есть, если каталог будет называться не одной буквой, а другой - поведение винды от этого не изменится, т.е. она все равно будет пытаться его считать на дисководе

Сергей Р: Проблема в том , что винда хочет поиметь ЛОГИЧЕСКОЕ устройство именно "A" , не B,C,D... По большому счету винде нужен доступ к обьекту по пути начинающимуся с A:\ и ей без разницы флоппи там или черт в ступе . P.S. suv3 пишет: есть интересное решение - выломать флоп + отключить его в биосе По твоей логике следующим должно барабанить устройство "C" имхо, вместо ААААА!!!! и Б%#..... усер будет орать С%#...

suv3: Терпеливо объясняю. Других слов у меня нет. Объясняю практически теми же самыми. Если непонятно - забей. w2k в отличие от других виндов при программной смене логического диска пытается перечитать его содержимое. Для жестких дисков это происходит незаметно и быстро. Для дисковода А - заметно. Если вместа А будет Б - абсолютно ничего не изменится, кроме буквы. Поэтому можно попробовать только физически убрать дисковод + отключить его в биосе, возможно это поможет.

Сергей Р: Объясню еще раз . Ты упорно считаешь , что А и В у тебя флоппи , да забудь ты про это . Это логические устройства и на них может быть все что угодно . С чего ты взял , что при винда при исключении из работы устройства А , сразу полезет на устройство В . Программа обращается не к флоппи , а к логическому устройству с буковкой А . Что так трудно разъем шлейфа к утройству переключить и физически исключить путь к контроллеру ?

Сергей Р: Для тех кто в танке , если не поймешь , то забей Шлейфы к контроллеру флоппи бывают разные : с одним разъемом , с 2-мя разъемами , с 3-мя разьемами , в общем сколько присандалишь . одни разъмы для флоппи 1.2 , другие для 1.44 и 2.88 Нас интересует шлеф с двумя разъемами на 1.44 , у которого один разъем подключен на прямую , а другой разъем подключен с перекручеными проводами (с 10-го по 16-й ) . Так вот нам надо флоппи вставить в разъем , где провода не перевернуты и будет тебе счастье . http://www.hardwarebook.net/cable/storage/floppy.html P.S. Ты упорно пытаешься свалить на глюк w2k , только забываешь , что раньше у Павла этой проблемы не было , все твои рассуждения строятся на неверной предпосылке , что надо фиксить или менять ОС

suv3: да хоть на жопу прицепи. винда будет на него лезть.

Сергей Р: Нашел w2k без всяких сервис пакетов , нажал Alt-F1 и никах обращений к флоппи , что ты пургу несешь . Забудь ты про свои предпосылки , что ты где-то,когда-то,чего-то слышал . Есть проблема , ее надо решать . Ты сказал : suv3 пишет: Это умалчиваемый каталог, который слишком усердно пытается определить операционная система. Если память не изменяет, в первых версиях ХР было то же самое. Потом пофиксили Павел ответил : Pasha пишет: w2k, установлена sp4 Все , что ты еще пытаешься доказать , не ужели не понятно , что не проходят твои умозаключения ? Забудь ты про то , что ты центр вселенной , опустись к нам , грешным .

suv3: не верю))) этот глюк давно и всем известен) скорее всего, ты просто обманывешь меня

Сергей Р: Ну мы же не в детском саду , единственное , что другое , это то , что использую norton commander версия 4.0 , вместо Volkov commander ( не люблю его ) .



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