Изменение старого приложения Win32 без исходного кода (возможно, написанного с использованием инструментов Borland) - PullRequest
0 голосов
/ 05 января 2011

У меня довольно старое приложение для Windows (1998), которое больше не поддерживается автором, и у меня нет его исходного кода. Это приложение в одном из своих окон имеет виджет выпадающего списка, где пользователь может выбрать одно из 4 предопределенных значений (чисел). Мне нужно добавить новые предопределенные значения или изменить виджет на что-то, что позволит мне ввести любое значение (какое-то поле редактирования или редактируемый комбинированный список).

Некоторые другие данные о приложении:

  • Возможно, написано с использованием некоторых инструментов Borland, я думаю, что он использует BDE и Paradox в качестве своей базы данных.
  • В каталоге есть файл с расширением .mme. Я распаковал его, и он содержит 5 файлов: .data, .rdata, .rsrc, .sdata, .text. Я просмотрел их в шестнадцатеричном редакторе, и они содержат некоторые текстовые данные, но я не знаю, как искать эти предопределенные значения. Поскольку это числа, вероятно, я найду только некоторые другие числа.

Я пытался использовать RedEdit и XN Resource Editor, но они показывают только значок и информацию о версии.

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

Ответы [ 2 ]

1 голос
/ 05 января 2011

Может быть возможно написать другое приложение, которое ищет эту программу, получает дескриптор окна, владеющего раскрывающимся списком (если t является собственным компонентом Windows), а затем получает дескриптор раскрывающегося списка ииспользуйте Windows SendMessage API для управления содержимым раскрывающегося списка.

http://msdn.microsoft.com/en-us/library/ms632595(v=VS.85).aspx

http://msdn.microsoft.com/en-us/library/ms644950(v=vs.85).aspx

Это может потребовать столько усилий, что это может бытьлучше просто переписать приложение!

0 голосов
/ 06 января 2011

Если он написан с помощью инструментов Borland, вы, вероятно, можете узнать, какой из них ищет в EXE-файле строку «Borland» - где-то должна быть строка с информацией об авторских правах.

Как только вы узнаете, найдите кого-то, имеющего опыт работы с инструментами Borland, и попросите ее выяснить, не появляются ли эти числа в раскрывающемся списке из таблицы базы данных. Если это так, попробуйте изменить эту таблицу, если нет, перепишите приложение:)

...