Нужен низкоуровневый программер
10792
16
Сэймэй
просветлённый
Доброго дня!
Тем кто помнит что такое com-порты, есть сообщение.
У меня есть в наличии некое оборудование. Оно управляется программой, все это крутится на винде xp.
Оборудование подключено через COM порты - их расширено до 6-ти штук количество.
Изготовитель оборудования, он же изготовитель ПО - успешно обанкротился и исчез.
А нужно изменить софт.
Софт заново мы напишем сами. Но вот протокол обмена ПО с оборудованием через COM-порты - нужно изучить и расписать.
В общем нужен человек который поставит сканер COM-портов на комп, и играясь с работающей на железе программой - отсканирует все запросы-ответы при различных действиях, и на выходе даст нам документацию на протоколы обмена, чтобы мы могли на её основе воссоздать ПО работы с железом самостоятельно.
На некоторых портах одно устройство - кнопка допустим, нажали - софт среагировал.
Есть порты на которых при помощи хитрых контроллеров подключено последовательно несколько однотипных устройств, имеющийся софт кидает туда комманды, и нужное устройство из последовательно включеных - выполняет комманду и сообщает в ответ успешно ли у него это получилось, или нет.
В общем я думаю понятно что и как.
Мне в личку все вопросы, оценки вашей работы в деньгах и так далее.
Удаленно работать не получится - ибо кто на кнопки будет нажимать? Но думаю что более чем реально приходить раз в день на час/два и спокойно все это разгрести за недельку )
Тем кто помнит что такое com-порты, есть сообщение.
У меня есть в наличии некое оборудование. Оно управляется программой, все это крутится на винде xp.
Оборудование подключено через COM порты - их расширено до 6-ти штук количество.
Изготовитель оборудования, он же изготовитель ПО - успешно обанкротился и исчез.
А нужно изменить софт.
Софт заново мы напишем сами. Но вот протокол обмена ПО с оборудованием через COM-порты - нужно изучить и расписать.
В общем нужен человек который поставит сканер COM-портов на комп, и играясь с работающей на железе программой - отсканирует все запросы-ответы при различных действиях, и на выходе даст нам документацию на протоколы обмена, чтобы мы могли на её основе воссоздать ПО работы с железом самостоятельно.
На некоторых портах одно устройство - кнопка допустим, нажали - софт среагировал.
Есть порты на которых при помощи хитрых контроллеров подключено последовательно несколько однотипных устройств, имеющийся софт кидает туда комманды, и нужное устройство из последовательно включеных - выполняет комманду и сообщает в ответ успешно ли у него это получилось, или нет.
В общем я думаю понятно что и как.
Мне в личку все вопросы, оценки вашей работы в деньгах и так далее.
Удаленно работать не получится - ибо кто на кнопки будет нажимать? Но думаю что более чем реально приходить раз в день на час/два и спокойно все это разгрести за недельку )
Но думаю что более чем реально приходить раз в день на час/два и спокойно все это разгрести за недельку )Сомневаюсь!!!
Вы не сказали что за оборудование.
я не сомневаюсь. я за это время сделать могу ) поэтому так и оцениваю
оборудование уникальное. программно-аппаратный комплекс )
оборудование уникальное. программно-аппаратный комплекс )
А исходники проги не сохранились штоле? И вроде, декомпильнуть прогу можно, ток там на ассемблере все будет, как раз для низкоуровневого программера.
ХочуСпросить
ЗооПрограммист
я не сомневаюсь. я за это время сделать могуНаихудшая ситуация - заказчик, который считает себя бывшим программистом. Заранее обречено на гору проблем.
Сэймэй
просветлённый
Наихудшая ситуация - заказчик, который считает себя бывшим программистом. Заранее обречено на гору проблем.извини, но я 18-ть лет программировал
и сейчас в критических ситуациях быстро сам правлю код не дожидаясь пока аутсорсеры сделают работу
так что гора проблем только у тебя в голове
исходников программы и не было ни когда. завод изготовитель успешно разорился.
про декомпеляцию шутку понял, но это не тот вариант
там надо-то, поставить сканер портов, потыркать прогу, потом логи внимательно проанализировать.
про декомпеляцию шутку понял, но это не тот вариант
там надо-то, поставить сканер портов, потыркать прогу, потом логи внимательно проанализировать.
Сейчас читают
Перерегистрация авто
83854
21
Куда идти учиться после школы? Оставаться в 9 или идти до 11?
260471
227
Описторхоз - как лечить?
668026
1000
про декомпеляцию шутку понял, но это не тот вариантДану, без декомпиляции любой протокол будет бессмысленныи набором цифр. Скажу как занимавшийся реверсинжинерингом, потребуется и протокол обмена и декомпиляция, причем для последней есть неплохой инструмент в виде IDA + пару плагинов привращающий тонну ассемблерного листинга в псевдоси код, которой читается куда как легче .)
COM порт
комманд на устройство подается - всего одна. и получается ответ успешно или нет.
все более чем уныло и просто
тупо смотрим лог общения и понимаем в каком формате кидается комманда на ком-порт, там должен быть номер устройства которому комманда предназначена, и параметр собственно который подлежит исполнению
и смотрим как в ответ летит сообщение о том что комманда выполнена, или что ошибка выполнения комманды
чего тут дизасемблировать? зачем усложнять себе жизнь
комманд на устройство подается - всего одна. и получается ответ успешно или нет.
все более чем уныло и просто
тупо смотрим лог общения и понимаем в каком формате кидается комманда на ком-порт, там должен быть номер устройства которому комманда предназначена, и параметр собственно который подлежит исполнению
и смотрим как в ответ летит сообщение о том что комманда выполнена, или что ошибка выполнения комманды
чего тут дизасемблировать? зачем усложнять себе жизнь
KSergey
guru
Ситуация для подрядчика патовая.
Если заказчик считает, что делов на час, потому что "он за час сделает" - сразу бежать, тебе все равно заплатят только за час вне зависимости от реальной сложности работ.
Нафик нафик.
Что характерно, будут непременно искать подрядчика вместо того, чтобы выделить этот час и сделать.
(по делу сказать нечего, я не с ходу умею требуемого)
Если заказчик считает, что делов на час, потому что "он за час сделает" - сразу бежать, тебе все равно заплатят только за час вне зависимости от реальной сложности работ.
Нафик нафик.
Что характерно, будут непременно искать подрядчика вместо того, чтобы выделить этот час и сделать.
(по делу сказать нечего, я не с ходу умею требуемого)
Ну если все так просто, то что мешает сделать сниф своими силами ? Лень, или всетаки, невсе так просто, как вы пишете ?
ХочуСпросить
ЗооПрограммист
Вот и я про то же. Сразу - нефиг связываться.
ХочуСпросить
ЗооПрограммист
у тебяМы уже успели где-то когда-то выпивать вместе?
Есть опыт работы и с самодельными протоколами, и с промышленными. На деле может оказаться совсем не то, что казаться. А если действительно там всё просто, тоже считаю, быстрее сами всё сделаете, чем кого-то найдете и он вам сделает. ИМХО
я не сомневаюсь. я за это время сделать могу ) поэтому так и оцениваюНу а чего не сделаешь?
На первый. Была у меня похожая задачка в году 95-м. Понятно, щас уже по этим протоколам нифига не помню, поэтому и не возьмусь. Но, хочу присоединиться к тем кто вопрошает "ежели всё так просто - почему не сам?" Потому што:
Тогда, была железяка (полумедицинская), которая также управлялась по порту. Отдаешь команду - получаешь чиселку. Или две-три... типа величины кожного сопротивления... при сканировании "вдруг" как бы выяснилось, что команды ДОСовский драйвер подает не токмо по команде проги, а ишо дополнительно "как бы между прочим" по таймеру от поданной команды ишо (ответ уже получен). Выяснилось это - далеко не сразу. Железяка буржуинская, вроде как примитивная - датчик и АЦП.
В итоге, помучавшись, подписав НДА на 15 лет, получили описание внутренностей... и исходник проги микро-контроллера железки (он там был!). Так вот, драйвер отдавал команду на чтение, читал данные и через тайм-аут (со случайной! задержкой) писал в контроллер код переинициализации. Вариантов переинициализации оказалось несколько (но немного). Как результат - отдаваемая чиселка - перекодировалась каждый раз по своему...
Вот такой "простой" датчик с АЦП оказался. Запрашивали "нафига". Ответ - дабы не сосканировали.
Тогда, была железяка (полумедицинская), которая также управлялась по порту. Отдаешь команду - получаешь чиселку. Или две-три... типа величины кожного сопротивления... при сканировании "вдруг" как бы выяснилось, что команды ДОСовский драйвер подает не токмо по команде проги, а ишо дополнительно "как бы между прочим" по таймеру от поданной команды ишо (ответ уже получен). Выяснилось это - далеко не сразу. Железяка буржуинская, вроде как примитивная - датчик и АЦП.
В итоге, помучавшись, подписав НДА на 15 лет, получили описание внутренностей... и исходник проги микро-контроллера железки (он там был!). Так вот, драйвер отдавал команду на чтение, читал данные и через тайм-аут (со случайной! задержкой) писал в контроллер код переинициализации. Вариантов переинициализации оказалось несколько (но немного). Как результат - отдаваемая чиселка - перекодировалась каждый раз по своему...
Вот такой "простой" датчик с АЦП оказался. Запрашивали "нафига". Ответ - дабы не сосканировали.
Есть аналогичная задачка. Решил продолжить в этом топе.
Суть в следующем. Имеются промышленные весы, которые общаются по com порту с компом. Взаимодействие происходит в режиме вопрос- ответ. Нужно проснифить обмен и реализовать выгрузку значение веса в текстовый файл через заданный интервал. Далее 1С периодически опрашивает этот файл. Описание протокола от разработчика имеется. Переписать программу обмена нужно в связи с тем, что драйвер привязывается к конфигурации компа и перенос на другой комп выполняется за отдельные деньги, причем для этого нужно вызывать спеца из другого города. Для бизнеса такая ситуация не приемлема, т.к. в случае поломки компа процесс останавливается. Решить вопрос по другому не получилось.
Если есть интерес, пишите в личку, обсудим.
Суть в следующем. Имеются промышленные весы, которые общаются по com порту с компом. Взаимодействие происходит в режиме вопрос- ответ. Нужно проснифить обмен и реализовать выгрузку значение веса в текстовый файл через заданный интервал. Далее 1С периодически опрашивает этот файл. Описание протокола от разработчика имеется. Переписать программу обмена нужно в связи с тем, что драйвер привязывается к конфигурации компа и перенос на другой комп выполняется за отдельные деньги, причем для этого нужно вызывать спеца из другого города. Для бизнеса такая ситуация не приемлема, т.к. в случае поломки компа процесс останавливается. Решить вопрос по другому не получилось.
Если есть интерес, пишите в личку, обсудим.
ТОП 5
2
3
4