|
dos программа на clipper | ☑ | ||
---|---|---|---|---|
0
baha888
21.02.19
✎
09:38
|
Доброго дня. Просьба сильно не пинать, не знаю куда обратиться. Есть старая программа по зарплате под dos написана на clipper работает на 386. Компьютер выжил свое решили перекинуть на Р4, столкнулись с проблемой зависает при запуске, отчеты работают (запускается). Есть подозрения что программа привязана к компьютеру или проверяет id компа при входе. Делал копию всего жесткого диска 100% рабочей программы на другой жесткий, результат тот же. Так же было опробована на Р3 и на другом 386. Как быть? Спасибо.
|
|||
52
ДенисЧ
22.02.19
✎
09:08
|
(51) Ну, я не видел железки, я видел только бумажки...
|
|||
53
ДенисЧ
22.02.19
✎
09:08
|
(50) Ага. На любой картинкохостинг заливай и ссылку сюда
|
|||
54
baha888
22.02.19
✎
09:09
|
программа дос через оболочку нортон, как по старинке autoexec.bat и config.sys
|
|||
55
Ботаник Гарден Меран
22.02.19
✎
09:15
|
Мы, клипперасты, еще живы.
P.S. Я тоже куски зарплатной программы писал. И лепил простенькую защиту, проверяющую параметры BIOS. |
|||
56
IvaneS
22.02.19
✎
09:36
|
(55) да, были веселые времена...
|
|||
57
Злопчинский
22.02.19
✎
09:46
|
А что, я ещё в середине 2000-х вовсю прогал на Фортране, без всяких гуев, бо они нафиг не нужны были.
А в отделе, когда уже хрюня не новичком была, стоял 486 DX75 c win 3.11 на 1мб оперативы с Нортон десктоп, Ворд, рисовалка PSP и построитель дииаграмм-схем. Так эта машинка вообще неубиваемая была, в итоге её просто в шкаф поставили поиомучто было достаточно более мощных компов, почти у каждого в отделе был |
|||
58
Злопчинский
22.02.19
✎
09:48
|
Мой путь в подвалы одинэсии начался как раз с того, что позвали что нить сделать как программиста - в конторе стояла фокспрошная прога, которая по материалам учёт вела и косячила все время...
|
|||
59
Mikeware
22.02.19
✎
09:51
|
(57) ээээ? а где и нафига?
|
|||
60
Mikeware
22.02.19
✎
09:54
|
+(59) не, я знаю, что фортран вполне жив, и умирать не собирается - туда в последнем стандарте (2010) распараллеливание добавили, да и ранее тоже добавляли вкусняшек. но он как бы специализированным инструментом стал, всякие физики-математики и близкие к ним инженеры...
|
|||
61
Nyoko
22.02.19
✎
09:57
|
Ищи декомпилер для клипера, потом колдуй код где проверка на ID
|
|||
62
baha888
22.02.19
✎
10:03
|
||||
63
Кирпич
22.02.19
✎
10:12
|
(62) выкладывай лучше образ диска. мож кто отремонтирует твою зарплату
|
|||
64
IvaneS
22.02.19
✎
10:17
|
(62) декомпилировать sal.exe надо
|
|||
65
IvaneS
22.02.19
✎
10:19
|
+ (64) а интересное в установке sal_inst.exe
|
|||
66
IvaneS
22.02.19
✎
10:22
|
(0) а что за ошибка выходит? может таблица (dbf файл) сломалась или индекс...
|
|||
67
VladZ
22.02.19
✎
10:26
|
(0) Выкинуть и забыть, как страшный сон.
|
|||
68
IvaneS
22.02.19
✎
10:46
|
(67) Зачем, это можно (нужно) капитализировать. Пациент, с большей долей вероятностью, готов платить.
|
|||
69
baha888
22.02.19
✎
11:00
|
Кризис. Денег нет. Только на мелкие ремонты. При запуске программы sal.exe висит. Выход через ctrl+break или резет
|
|||
70
baha888
22.02.19
✎
11:02
|
Буду пробовать через DOSBox 0.74 запустить
|
|||
71
IvaneS
22.02.19
✎
11:03
|
(69) переиндексацию провел?
|
|||
72
baha888
22.02.19
✎
11:04
|
Сначала Вам с кину. Скажите какой файлообменник по проще.
|
|||
73
baha888
22.02.19
✎
11:05
|
Переиндексация непомогла
|
|||
74
IvaneS
22.02.19
✎
11:13
|
(73) сам определись.
|
|||
75
baha888
22.02.19
✎
11:14
|
||||
76
Гость из Мариуполя
гуру
22.02.19
✎
11:15
|
(72) да выкладывай уже свою программу. Заархивируй да выложи.
файлобменник - ну.. яндекс диск, гугл диск, майл диск и т.п. - не устраивают? |
|||
77
Гость из Мариуполя
гуру
22.02.19
✎
11:20
|
(75) а покажь ка ты файлики autoexec.bat и config.sys с компа, на котором эта програ работала, и с компа, на котором теперь запускаешь. Если можешь.
Есть у меня смутное подозрение... на ключики типа files=40, на настройки EMM386.exe, himem.sys и т.п. |
|||
78
IvaneS
22.02.19
✎
11:21
|
(77)+
|
|||
79
VladZ
22.02.19
✎
12:08
|
Поставьте ЗИК 7.7. И проще, и быстрее. И нет проблем, как в сабже.
|
|||
80
VladZ
22.02.19
✎
12:10
|
(0) Насколько сложный расчет ЗП? Просто оклад + премия? Или KPI еще какой-то сверху?
|
|||
81
Дмитрий
22.02.19
✎
12:28
|
может там просто ограничение на количество одновременно открытых файлов системное срабатывает?
|
|||
82
Гость из Мариуполя
гуру
22.02.19
✎
12:32
|
(81) может.
Я ведь про ключ типа "files=40" не просто так спрашивал. Но автор пока молчит. |
|||
83
tgu82
22.02.19
✎
13:01
|
(0) Правда удивил, хотя моя "зарплата и кадры" на турбопаскале + турбопрофешинал отфигачила лет 10 а то и больше и потом только перевели ее на 1С (я кроме 5-го фортрана можно сказать и не знал ничего поначалу). Ну да Нортон Коммандер, использование прерываний DOS чтоб было вся как в Нортон Диск Докторе ).
В конторе было около 3000 (трамвайно-троллейбусное управление). Все сам делал - и индексы придумывал и матричные принтеры заставлял печать в ширину больше 240 символов. Мало того для экономии хранил кого последним напечатали, печатали по подразделениям, использовал помнится указатели и "кучу" для произвольных надбавок и удержаний (и где-то э формулы для них вводили и хранились они). Их начальник АСУ была очень умной - все-таки раньше на физматах сильные студенты учились. Без нее бы не взлетела. Это я потом уже с фоксом познакомился и программировал на нем (даже в связке с СИ). Хотя суперотчет который вся область использовала был красив по тем временам, печатался из фокса, а данные формировались на паскале (как-то так) |
|||
84
tgu82
22.02.19
✎
13:05
|
(83)+ Поначалу она ж на "Искре" работала, уже потом PC появились в конторе
|
|||
85
tgu82
22.02.19
✎
13:15
|
(0) Дисковой памяти не хватало и использовали стекер для сжатия. Может у вас что-то с этим связанное?
|
|||
86
Mikeware
22.02.19
✎
13:30
|
(82) У клиппера еще свои переменные были в config.sys - типа set clipper=f50 (это позволяло открыть 50 файлов, из которых 4 служебных - сам экзешник, оверлей, стандартный ввод и вывод), там же ключ для памяти переменных и т.п.
но будем надеяться, что ТС скопировал автоэкзек и конфиг |
|||
87
Злопчинский
22.02.19
✎
13:33
|
(86) надеяться? да вы, батенька, оптимист...
|
|||
88
baha888
22.02.19
✎
13:34
|
Ребята Вы уж извините, сильно не пинайте первый раз с этим сам помогаю добрым людям, у самого спортивный интерес.
|
|||
89
baha888
22.02.19
✎
13:34
|
Стараюсь как могу
|
|||
90
Злопчинский
22.02.19
✎
13:35
|
Еще кто бы аналогичный рецепт готовый дал для запуска Карат-М, у меня где-то базенка древнющая своя валяется в ней почти вся моя библиотека была
|
|||
91
Serg_1960
22.02.19
✎
13:35
|
Чисто поржать - пятница всё-таки:
Я для Clipperа писал драйвер мыши на макроассемблере... но вы ищите, ищите декомпилятор для Clipper-а - в языке меньше двух десятков версий всего. Я верю: вы можете декомпилировать программу до уровня Assembler-а :) |
|||
92
baha888
22.02.19
✎
13:38
|
Кстати пятница, всем выходных желаю плюс с праздником наступающим, у нас суббота то же рабочий день.
|
|||
93
baha888
22.02.19
✎
13:39
|
Обязательно выложу прогу со всеми вытекающим...
|
|||
94
Mikeware
22.02.19
✎
13:39
|
(90) так Карат-М - это ж FoxBase+
|
|||
95
Mikeware
22.02.19
✎
13:42
|
(91) там байт-код, и интерпроетатор.
единственный минус - многие типовые dBase команды (@SAY...GET...) были сделаны макросами, и поэтому при декомпиляции их не узнать глазами без соотвествующего опыта работы с клиппером |
|||
96
baha888
22.02.19
✎
13:43
|
Хотел еще одно заметить отчеты работают, но запускаются другим exe-шником
https://hkar.ru/Xogv до запуска https://hkar.ru/Xogw после запуска файл repsal/O |
|||
97
Гобсек
22.02.19
✎
13:45
|
(91) насколько я знаю, полноценного декомпилятора Clipper так и не появилось. Это оказалось не такой простой задачей. У Clipper в отличие от, к примеру, foxpro есть куча режимов компиляции и внешних библиотек.
|
|||
98
Mikeware
22.02.19
✎
13:48
|
(97) проблемы были только с оверлеями, и с качеством самого декомпилера.
|
|||
99
baha888
22.02.19
✎
13:56
|
Может проще кому то на почту выложить или админу
|
|||
100
baha888
22.02.19
✎
13:56
|
Я про программу
|
|||
101
Serg_1960
22.02.19
✎
14:01
|
(98) и не только. Можно было встраивать свои исходные библиотеки и модифицировать штатные (речь не о внешних подключаемых библиотеках) - сам язык, грубо говоря, лежал "во вне" в файлах и был достаточно "гибкий" для модифицирования. А если можно было модифицировать - то грех этим не пользоваться. Я писал свои собственные языковые конструкции - их корректно не декомпилируешь в исходный текст.
|
|||
102
zlnk
22.02.19
✎
14:14
|
(31) "Миста - это чат" (с)
Я первый раз в таком же шоке был, когда задал вопрос и не заглядывал полдня. |
|||
103
Mikeware
22.02.19
✎
14:20
|
(101) библиотеки - ну они и оставались как бинарник
а собственные языковые конструкции - так они макропроцессором обрабатывались... как и пример в (95). и до собственного языка декомпилер разбирал вполне нормально, если не падал :-) А вот чтоб сообразить, что "вот эта цепочка - на самом деле дибейсиковская сэй-гет" - нужен был некоторый опыт или знания... |
|||
104
Mikeware
22.02.19
✎
14:21
|
(99) блин, ну выложи на яндекс-диск/гуглодиск/мэйл-облако, расшарь и ссырку сюда...
|
|||
105
VladZ
22.02.19
✎
14:22
|
(90) Фигасе.. "Карат-М" вспомнили. Могу лишь похвастаться, что я его видел и пытался запускать.
|
|||
106
zlnk
22.02.19
✎
14:27
|
(90) Если просто посмотреть, может, подойдёт такое решение?
DBF Viewer for Clipper, dBase, FoxPro dbf files dbfviewer.com |
|||
107
zlnk
22.02.19
✎
14:30
|
(105) Я в нём писал нетленки ))
|
|||
108
mishaPH
модератор
22.02.19
✎
14:32
|
(86) епть.. я даже это вспомнил как и фмайлес=40 ...
|
|||
109
Mikeware
22.02.19
✎
14:33
|
(105) а мы dBase-II переводили на русский :-) под cp/m на Корветах...
кстати, одна из первых коммерческих прог с использованием БД мной была в 1990- именно на этом написана. Что-то там для ветеранской службы ЧЭМК - учет ветеранов, стажа, льгот и всего такого... печать на конвертах адресов, каких-то текстов... |
|||
110
Mikeware
22.02.19
✎
14:35
|
+(109) за корветом в Москву летал, точнее в Зеленоград, на завод. а вот завод уже не помню (впрочем, его уже там и не существует)
|
|||
111
tgu82
22.02.19
✎
14:35
|
(109) А я на фоксе влегкую ) фигачил печать билетов для кинотеатров по рядам и местам - дешево продавал но и делать было легко.
|
|||
112
Mikeware
22.02.19
✎
14:40
|
Кстати, насчет Карата-М - там же просто формат индексов другой был, еще не "быстрый". А тексты в файлах *.kar хранятся. так что можно попытаться просто в факспро запусить всё это
|
|||
113
baha888
22.02.19
✎
14:40
|
Ребят да я сам как могу хочу выложить у нас тут что хотят то банят сайты
|
|||
114
Злопчинский
22.02.19
✎
14:44
|
(105) я на нем прилично всякого понаписал в свое время. загонял туда базы по данным NGDC по геофизике, солнечной активности, потоки и прочее и крутили считали всякое что вам лучше не знать ;-)
|
|||
115
IvaneS
22.02.19
✎
14:45
|
(90) Карат работает под DOSBox... Сам настроил. Ярлык для запуска на рабочий стол и расчетчикам удовлетворяло, а потом я на 1С перевел и забыли... в прошлом году на рабочем столе 7ки ярлык видел, получается ИТшники все перенесли с XP. ^))) Могу поделиться, но после праздника или на личку пиши
|
|||
116
baha888
22.02.19
✎
14:50
|
скиньте почту я выложу а вы потом сюда для разбора палета....
|
|||
117
Mikeware
22.02.19
✎
14:51
|
(116) ну мой ник на мэйл.ру
|
|||
118
baha888
22.02.19
✎
15:27
|
Отправил
|
|||
119
Mikeware
22.02.19
✎
15:47
|
Получил. Домой приеду - перевыложу для всех.
|
|||
120
baha888
22.02.19
✎
16:17
|
Спасибо
|
|||
121
Партизан
22.02.19
✎
16:49
|
(0) У нас тоже зарплатная программа используется до сих пор старая, под DOS, написана на Clipper. Она действительно привязывается к железу, а именно к жесткому диску. Защита организована через прямое обращение к жесткому диску. Недавно выгорел преобразователь питания процессора на материнской плате - пришлось ее ремонтировать.
|
|||
122
Злопчинский
22.02.19
✎
16:57
|
(115) ОК!
|
|||
123
baha888
23.02.19
✎
13:25
|
Запускал через DOSBox вот:
Если запустить программу с указанием расположения всех папок, то то же самое как на 386 висит. Если запустить только исполняемый файл sal.exe то выдает ошибку об отсутствие color.dat https://hkar.ru/XoZL |
|||
124
Mikeware
23.02.19
✎
14:12
|
||||
125
baha888
25.02.19
✎
10:22
|
Спасибо. Но изменения не наблюдается. Есть какие то особые инструкции? С копировал на хдд в Р4 и запускал из доса как и прежде.
|
|||
126
Mikeware
25.02.19
✎
10:24
|
(125) руки не дошли - праздник с сослуживцами, 2 дня рожденья...
|
|||
127
ice777
25.02.19
✎
10:37
|
Хехе. Моя первая зарплата была написана на клиппере, по тем временам весьма передовая система была, сеть умела, можно было делать вставки на C. на 286 компе считали. Реально быстро работает, только там удаление записей надо было заменить на пометку активна-неактивна, а то как все фоксоподобные долго удаляла из больших объемов.
|
|||
128
Mikeware
25.02.19
✎
10:45
|
(127) ну, не "фоксоподобные", а диБэйсики... ну и у всех так - удаление помеченых - только при упаковке. а упаковка - по сути перезапись таблицы.
|
|||
129
ice777
25.02.19
✎
10:46
|
(128) все фоксы делали то же самое. именно так- перепаковка. и кларион и чистый фокс.
|
|||
130
Mikeware
25.02.19
✎
11:00
|
(129) ну так фоксы - это последыши дибейса и сами по классификации - дибейсики...
хотя записывать кла в фоксы - это, имхо, зря... |
|||
131
Vlad_69
25.02.19
✎
11:43
|
В Досбоксе вы обломитесь с принтером, потому что клипперовские проги хотят напрямую в аппаратный порт LPT. У Досбокса нет эмуляции LPT на таком уровне.
Впрочем, и без него пока облом. Декомпиляции оно поддалось, но парочка Си-шных функций, которые, как мне кажется, за привязку к машине и отвечают, там таки есть. |
|||
132
Vlad_69
25.02.19
✎
11:55
|
restore from color.dat
if (!(clr9 = checkrom() .AND. 1911 = dsklckrd())) set escape off do while (.T.) enddo endif Вот, собственно, и защита: не совпал биос и чего-то там из параметров диска, и привет - ушло в бесконечный цикл :) |
|||
133
ice777
25.02.19
✎
11:57
|
(131) кстати, да, помню, что декомпилятор для клиппера существовал и работал.
|
|||
134
Vlad_69
25.02.19
✎
12:04
|
(133) Valkyrie называется. Работает, куда ж он денется.
Где топикстартер-то? Сроки какие у него? Можно попытаться пересобрать современным компилятором (Harbour называется), будет ему консольное родное Win32-приложение. Но это не за один день, там еще несколько самопальных функций, которые надо на аналоги заменять. |
|||
135
baha888
25.02.19
✎
15:12
|
Доброго дня. Как и писал выше в основном я по железу, вот и время пролетает быстро не успеваю во время следить. Спасибо за старание. Не останусь в долгу. Сроков пока таковых нету, им пришлось с другого отдела взять, базы я им скинул, щас работают, но резервов больше нету. Переход на Win32-приложение хорошая идея, но на сколько затратная?
P.S. Праздник святое дело. |
|||
136
Garykom
гуру
25.02.19
✎
15:18
|
(132) Так наверняка же dsklckrd() нечто с диска или из базы читает
|
|||
137
Garykom
гуру
25.02.19
✎
15:19
|
(135) Думается там зарплатная программа по сути простейшая и легко реализуется на типовой 1С типа ЗиК или ЗУП
|
|||
138
Garykom
гуру
25.02.19
✎
15:25
|
(132) Кстати если программист вменяемый писал то там должен быть некий "генератор ключа" отдельно или в виде запуска с какими то параметрами и возможно паролем
|
|||
139
kovalev_oleg
25.02.19
✎
15:36
|
Нужно искать декомпилятор, потом разбирать что за защита, как давно это было, 28 лет прошло ;)
может тут https://softclipper.net/ |
|||
140
Vlad_69
25.02.19
✎
15:57
|
(139) Да декомпилировал я уже эту софтину.
Быстрее будет выкинуть защиту вообще и пересобрать, чем еще и асмовскую функцию потрошить. |
|||
141
Mikeware
25.02.19
✎
15:57
|
(136) DiskLockRead кагбэ намэкаэт...
|
|||
142
Vlad_69
25.02.19
✎
16:05
|
(135) Сделаем так: чтобы опрометчивых обещаний не давать, в выходные смогу заняться плотнее, попробую пересобрать, тогда в понедельник отпишусь, вышло что или нет.
Аналогичную систему пару лет назад портировал на Win32, завелось нормально. Ткнитесь в почту, в профайле открыл, если какие вопросы есть. |
|||
143
IvaneS
25.02.19
✎
16:59
|
(142) так и предполагал что color.dat запихана кусок Виоса и количество дисков, где даже подключение сетевых томов приводит к остановке программы ЗП.
Выше сообщал на ошибку отсутствия этого файла color.dat... |
|||
144
IvaneS
25.02.19
✎
17:01
|
+(143) "сообщал" читать "сообщалась автором".
|
|||
145
Vlad_69
25.02.19
✎
18:40
|
(143) Нет там никакого "куска Биоса".
Вот все, что там лежит: D:\MemEdit>ClipMemReader.EXE /l COLOR.DAT CLR1 : w+/n CLR2 : w+/b CLR3 : gr+/n CLR4 : gr+/rb CLR5 : w+/r CLR9 : -29029 А потом переменная CLR9 сравнивается с результатом функции checkrom(), как видно по куску кода выше. |
|||
146
ice777
25.02.19
✎
19:32
|
(140) Поосторожней с декомпилированной прогой. Там может внезапно вылезти несколько забавных глюков декомпилятора.
|
|||
147
Vlad_69
25.02.19
✎
19:40
|
(146) Бывали грабли, да :)
|
|||
148
zlnk
27.02.19
✎
08:30
|
(132) а есть вариант найти этот код в бинарнике и тупо забить его NOP'ами?
|
|||
149
Vlad_69
27.02.19
✎
11:08
|
Там же в клипперовских потрохах хитро устроено - трансляция в т.н. "P-Code" (псевдокод, грубо говоря), а потом его интерпретация рантаймом, линкуемым в экзешник при компиляции и сборке.
|
|||
150
Mikeware
27.02.19
✎
11:18
|
(149) так Идой найди вызов checkrom()и dsklckrd(), и пусть они возвращают требуемое всегда...
|
|||
151
Vlad_69
28.02.19
✎
20:34
|
https://hkar.ru/XsYL
Оно? (Старею, блин, хотел пойти по долгому пути. Вот в (132) верное решение было предложено. Причем NOP-ами надо было забить именно в псевдокоде, тем более, что описание P-code с кодом операции есть, а нужное смещение декомпилер показывает :) {Хотя по-хорошему пересобрать бы все равно надо, чтоб пока люди работали, а потом уже пусть ищут способы миграции на более современные платформы) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |