Форум: "Система";
Текущий архив: 2002.01.17;
Скачать: [xml.tar.bz2];
ВнизВовместимость Найти похожие ветки
← →
Дядька Форгер (2001-09-27 08:13) [0]Народ :)Как узнать, будет ли работать под какой то ОС твоя программа или нет ?
я сделал прогу в 98-х, она соотв кроме 98-х и МЕ не идет нигде :)
т.е. в МЕ с небольшимми глюками, в 95-м тоже с небольшими, а в нт, 2000 и хп вообще не идет :)
как узнать из за чего, и как с этим бороться ?
Я думал дельфи таким не страдает..
← →
olega (2001-09-27 08:48) [1]дельфи таким действительно не страдает...:)
все зависит от проги. Чё за прога то?:)
← →
Михаил Зенкин (2001-09-27 13:19) [2]Напиши хотябы - что конкретно не идет?
← →
Andrey Klimov (2001-09-27 14:27) [3]Траблы возникают когда используешь те или иные функции или процедуры, скажем, из WinAPI, или в результате использования специфических функций... яркий пример - форматирование дискеты. И под 9x и под NT используются CreateFile(...), и функции IOCTL, но по разному (!). Узнать совместимость можно нажав на F1, если это функция WinAPI, в справке дается описание совместимости функции под ту или иную платформу.
← →
Дядька Форгер (2001-09-27 20:33) [4]Программа - директ мэйлер , если упростить.....
4 потока,
один постоянно ищет NS записи,
2-й - проверяет новые,
3-й - отправляет.
4-й - это как я понмаю сама прога :)
использует созданиеудаление файлов, ТвебБроузер, и пару сторонних компонент (Sinapse) для отправки мыла и вычисления НС записей.
Прога конечно корявая,
но все равно непонятно :)
Посмотрите, есть инсталляшка на
http://office.dixis.ru/confirmailer/
Буду признателен за любую помощь
← →
y-soft (2001-09-27 21:55) [5]Беда известная. Выход - программно определять версию Windows и выполнять для каждой версии свой код (подробности о различиях в MSDN)
Удачи.
← →
Дядька Форгер (2001-09-28 02:58) [6]а как узнать какой именно код не работает в той или иной ОС ?
перебирать исходники компонентов ? смотреть где какая функция и смотреть на ее ограничения в мсдн - это ж крякнуться можно, годы уйдут :)
← →
Станислав (2001-09-28 10:19) [7]Function IsNT:boolean;//проверяем платформу NT или нет
var
verinfo:OSVERSIONINFO;
begin
verinfo.dwOSVersionInfoSize:=SIZEOF(OSVERSIONINFO);
result:=false;
GetVersionEx(verinfo);
if verinfo.dwPlatformId=VER_PLATFORM_WIN32_NT then Result:=true;
end;
← →
Дядька Форгер (2001-09-28 19:44) [8]Оно, конечно, спасибо :)
Но даже если я знаю на чем запусается программа то не знаю на чем глючит и бсд выдает :)
← →
y-soft (2001-09-28 21:27) [9]А под отладчиком на разных Windows? Или вставить в подозрительные места Assert? Try Except? А иначе IMHO никак
← →
Дядька Форгер (2001-09-29 17:46) [10]гмм... так если какая то фича не работает под НТ, то даже если ее со всех сторон ограничить try except и прочими - и она запустится без показа ошибок - работоспособнее от этого имхо программа не станет...
нужно вычислить что именно не работает под нт итд.
только отладчики остаются ?
я думаю поставить себе все операционки, на каждую - дельфи и скомпилировать под каждую ос свою версию
← →
Anatoly Podgoretsky (2001-09-29 18:17) [11]Ты серьезно, делать программу в стольких версиях (не один дасяток) может все таки лучше одну, но правильно работающию под разными конфигурациями и ОС, а то ведь пользователю запутаются какую запускать. Не завидую.
← →
Andrey Klimov (2001-09-29 18:59) [12]Ставишь курсор на функции WinAPI и жмешь F1, далее, в справке щелкаешь по меню Quick Info где сказано, где идет, а где нет. Если ты используешь сторонние компоненты без исходников, возможно ты не докопаешься до сути.
А вообще-то не помешало бы знать хотя бы в минимальном объеме WinAPI.
Наверняка используются вызовы ToolHelp. Под NT платформой, конечно не пойдет. Под NT надо использовать PSAPI. Это я в качестве примера...
← →
y-soft (2001-09-29 21:49) [13]>Дядька Форгер
Я предлагал не скрывать ошибки, а как раз наоборот - показывать, где они происходят.
Может тогда легче станет :)
← →
VRussian (2001-09-30 11:57) [14]Во-во, и у меня такая трабла Сайт, написанный под
IExplorer не работает на NetScap-e, оптимизируешь
под Netscape - не работает на IE.
А если оптимизировать и под NN и под IE, то всё-равно
на какой-нибудь Опере работать не будет.
А ведь есть ещё Arachne, Lynx и т.д. и т.п.
Теперь, представь, что IE- это Win95, NN- WinNT,
Opera-WinME, а Lynx - это ,скажем, ну допустим Linux.
Под все платформы заточить невозможно! Не стоит и стараться.
Так можно и всю жизнь потратить оптимизируя код под ВСЕ платформы.
Web-мастера в таких случаях оптимизируют под самые распространённые
платформы, а если под какую не получилось - пишут, дескать, сайт
оптимизированн только под такую платформу.
Многие известные создатели ПО так и делают, взять хотя бы
те же антивирусы...
З.Ы. Кстати, мне известна одна программа,
которая работает под DOS,WIn3.11, Win3x, WinNT и MacOS (!)
да и та- вирус.
We are to make the World better...
← →
VRussian (2001-10-01 20:09) [15]А вообще-то "ВОВМЕСТИМОСТЬ" - это сколько
в программу кода помещается да?
We are to make the World better...
← →
Дядька Форгер (2001-10-02 04:41) [16]Восместимость - это опечатка :)
сторонних компонент использую всего 2
о винапи имею достаточно расмытое представление :)
(в свое время пользовал книжку "разработка приложений на С для виндовс 3.1 :)
затачивать под все версии не зочется, так же как и искать что именно не работает, т.к. это означает остановку. Проще по моему сейчас сделать пару версий под основные ОС, потом основательно напрячься и засесть за учебу :)
я уже писал тут, что идей уйма :) охладеваешь к оным, когда реализация подходит к финалу, уже наверное лень чтоли.. другие зовут
Я просто и начал эту ветвь из за того, что точно знаю что проблема не в сторонних компонентах, а в том, что пользуясь фактически только стандартными средствами дельфи я получил несовместимый код :)
Тут действительно или каждую строку в справочнике проверять - или компилировать под разными ОС, или писать без компонент вообще, зная точно что где будет работать или нет.
Страницы: 1 вся ветка
Форум: "Система";
Текущий архив: 2002.01.17;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.004 c