-
Renegat (07.05.08 20:22) [19]
> совместимость со старым хламом типа .286 и .386
Гм, а на 386 хотя бы Windows 95 запустится? Если нет, то обеспечивать такую совместимость в прикладных прогах смысла никакого.
-
> Гм, а на 386 хотя бы Windows 95 запустится?
А то как же? Правда тормозов будет... ууу %)
Ибо триставосьмидесятники они уже 32-разрядные, в отличие от двести-, сто-, и просто восьмидесятников.
В принципе, под двойки пожет пойти Win 3.11 - а посему совместимость тоже нужна :D
-
> Тыщ © (08.05.08 00:13) [20]
Да какая разница? Запустится, не запустится. Ты найди во всём мире хоть один рабочий комплект .386 + матплата + память + видеокарта. О такой мелочи как мышь и клавиатура я уже молчу. Их разъёмы хоть перепаять можно. :)
-
> andreil © (07.05.08 20:18) [18]
подозреваю, что ошибка не в этих функциях.
-
> Если так, то
Спасибо, конечно, но эти функции используются и в других местах ;)
-
Только что подставил эту функцию в код - вылет с aCCESvIolation :(
Надо все-таки покопаться в АСМе...
-
> Надо все-таки покопаться в АСМе...
Бряк + ctrl-alt-c в помощь. Там всё просто - два задействованных регистра, посмотришь что как крутится и куда попадает.
-
Не сильно вникая в тему. ИМХО наиболее правильно писать не cdecl, stdtcall etc, а assembler. Что бы фреймов входа/выхода в функцию не было. Но могу ошибаться - нужно смотреть.
-
> andreil © (08.05.08 16:01) [25]
>
> Только что подставил эту функцию в код - вылет с aCCESvIolation
> :(
> Надо все-таки покопаться в АСМе...
>
Не надо копаться в АСМе. В этих 6 строчках просто негде копаться. Надо подобрать правильное соглашение о вызовах.
-
> Дмитрий Белькевич (08.05.2008 16:15:27) [27]
Чего?
Справку умеешь читать?
Попробуй, просветляет.
-
> Спасибо, конечно, но эти функции используются и в других местах ;)
Сильно подозреваю, что в тех других местах тоже можно переписать проще. Хочешь - выкладывай код: подумаем, как именно. Возможно, от етих функций вообще удастся избавиться. А так, имхо, ошибка не в приведённых выше функциях, а в коде непосредственно_до/сразу_после их вызова.
-
>The reserved word inline and the directive assembler are maintained for backward compatibility only. They have no effect on the compiler.
Кгхм. Вот жеж козлы, а я свято верил ;)
-
> Дмитрий Белькевич (08.05.2008 17:44:31) [31]
Теперь лишился детских иллюзий
-
> Сильно подозреваю, что в тех других местах тоже можно переписать
> проще. Хочешь - выкладывай код: подумаем, как именно. Возможно,
> от етих функций вообще удастся избавиться. А так, имхо,
> ошибка не в приведённых выше функциях, а в коде непосредственно_до/сразу_после
> их вызова.
Говорю сразу - исходник 100%рабочий, тк он уже участвует в моей программе в виде ДЛЛки. Но вся соль в том, что моя программа - тоже ДЛЛка, так что тягать еще один файл как минимум некультурно.
Пока попробую перевести на Дельфи....
-
> andreil © (08.05.08 21:39) [33]
Про соглашения о вызовах справку читал?
-
>Теперь лишился детских иллюзий
Век живи - век учись, всё равно дураком помрёшь...
-
> Дмитрий Белькевич © (09.05.08 01:00) [35]
>
> >Теперь лишился детских иллюзий
>
> Век живи - век учись, всё равно дураком помрёшь...
>
Ну, судя по анкете, у тебя ещё много времени, чтобы опровергнуть сей афоризм. :)
34 года это ещё молодость.
-
-
Не, лучше уж таскать ее с собой, ка ресурс, ведь:
1) весит она 19Кб;
2) в моей программе есть функции инициализации/деинициализации, вот по ним и будем извлекать/удалять ДЛЛку.
Другого выхода я не вижу, тк:
1) подключить OBJ-файл, судя по всему, не получится;
2) если включить в состав программы ДЛЛку виде ПАС-модуля, как в статье, то это даст 20Кб прироста к размеру программы, а она весит со всеми файлами ровно 96Кб, так что не целесообразно.
-
> andreil (10.05.2008 12:22:38) [38]
19 кб целесообразно, а 20 уже нет. А к этим 19 кб ты прибавил операции по манипулированию с ним как с ресурсом, а они всяко будут более 1 еб.