Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "KOL";
Текущий архив: 2003.09.25;
Скачать: [xml.tar.bz2];

Вниз

Для тех кто пишет компоненты   Найти похожие ветки 

 
Bartov   (2003-01-05 13:01) [0]

Проблема совместимости версий Делфи на лицо и особенно сказывается при работе в Design-Time.
Старшие версии поддерживают младшие, но НЕ оборот.
Как я заметил у многих стоит Делфи 5, 6 и 7. Делфи 2, 3, 4 - уже умерли...
Так что, елси Вы написали на Д6 или Д7, то возникают проблемы у кого Д5.

Отсюда и предложение и вопрос:
Чтоб все писали компоненты на Д5 для совместимости или как решить эту проблему?

Отниситесь пожайлуста к воросу серьезно.
Ведь не многие могут позволить себе поставить сразу несколько версий Делфи, да и зачем это...


 
Gandalf   (2003-01-05 16:29) [1]


> Как я заметил у многих стоит Делфи 5, 6 и 7. Делфи 2, 3,
> 4 - уже умерли...


Согласен, правда если меня сильно попросят я помогу адаптировать свой компонент под иные версии, словом, а может и делом - но на поток, ставить не буду.


> Проблема совместимости версий Делфи на лицо и особенно сказывается
> при работе в Design-Time.


Бесспорно, особенно при написании редакторов свойств. Причем несовместимость во все стороны.


> Отсюда и предложение и вопрос:
> Чтоб все писали компоненты на Д5 для совместимости или как
> решить эту проблему?


Заставлять нельзя и невозможно, а насчет совсестимости, я думаю, кому надо и у кого не работает, в состоянии написать автору и сказать - "помоги". Иного выхода пока не вижу.


 
Bartov   (2003-01-05 21:47) [2]

2Gandalf
Согласен, правда если меня сильно попросят я помогу адаптировать свой компонент под иные версии, словом, а может и делом - но на поток, ставить не буду.

Это называется "кидалово" (без обид), но такая ситуация у всех.
Я заметил, что практически все компоненты написаны на Делфи 5.
Сам ты пишишь на Д5, Владимир Кладов тоже пишит на Д5, а Д6 и Д7(глюкодром) не признает.

Следовательно пусть все пишут на Д5?!...
Это не решение проблемы... и походу ответа не найдем...


 
Gandalf   (2003-01-05 22:10) [3]


> Это называется "кидалово" (без обид), но такая ситуация
> у всех.


Вообще-то, я писал про Версии 1-4, насколько я знаю, все мои компоненты работают под 5-6 (за 7 не ручаюсь, вообще жалоб не поступало). И по мере сил я стараюсь их править под нужды народа, но в конце концов, "колхоз дело добровольное", и компоненты я все таки в первую очередь пишу под себя... потому они под 5 и пашут надежно (у меня 5 версия, по ряду личных причин), но в ближайшее время (опять же по ряду личных причин) перейду на 6-7, и адаптацией под 1-5 буду заниматься, опять же неохотно, а порой и по личному требованию пользовай, к чему мне делать поддержку всех версий, если никто моим компонентом, на версии X не пользуется.


> Следовательно пусть все пишут на Д5?!...
> Это не решение проблемы... и походу ответа не найдем...


Нет, никого переходить на "мою" версию Дельфи не призываю. Каждому свое. Универсального выхода нет, а ввести полною совместимость порой тяжело и что главное не надо. На всех не угодишь, себя лишь навредишь. Свое "решение" сложившийся ситуации я выше изложил...


 
Bartov   (2003-01-05 23:40) [4]

2Gandalf
к чему мне делать поддержку всех версий, если никто моим компонентом, на версии X не пользуется.
Я например пользуюсь, но не всеми, по мере надобности.

Меня сегодня целый день мучал вопрос, под какой Делфи писать и все же выбрал Д7.


 
lamachok   (2003-01-06 03:38) [5]

как правильно было замеченно на всех неугадишь .... все равно у кого то не будет работать.... да и всех не заставишь писать на 5 ... хотя я согласен что надо писать на 5, чтобы подходило и к 5 и к 6 и к 7 - как самые распространненые ... хотя ведь есть те кто пользуется 3 и 4 и как быть с ними????


 
SPeller   (2003-01-06 07:22) [6]

Работа в Run-Time в различных версиях Дельфей практически не отличается, поэтому функциональная начинка страдать не будет, проблема лишь при установке компонент и редаторов свойств. Отсюда вижу 3 выхода:
1) Поставить несколько Дельфей;
2) Договориться с кем-либо, у кого иная версия Д об адаптпции под эту версию;
3) Хранить/запомнить наиболее часто встречающиеся различия, и после разработки отправлять кому-либо тестировать. Опять же, если у тебя нет нужной Д, то придётся искать человека для помощи в этом вопросе.

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


 
Gandalf   (2003-01-07 14:00) [7]


> 1) Поставить несколько Дельфей;


Неудобно...


> 2) Договориться с кем-либо, у кого иная версия Д об адаптпции
> под эту версию;
> 3) Хранить/запомнить наиболее часто встречающиеся различия,
> и после разработки отправлять кому-либо тестировать. Опять
> же, если у тебя нет нужной Д, то придётся искать человека
> для помощи в этом вопросе.


Собственно я так и делаю. Только у меня знакомые с Д6. Ну и наиболее частые приемы я тоже выделил...


 
Bartov   (2003-01-07 15:11) [8]

2lamachok
... хотя ведь есть те кто пользуется 3 и 4 и как быть с ними????
Старую лошадку в упряжку не запрягают. И с ними очень моного будет проблем при создании свойств. А в Д5,6,7 хоть есть различия, но много схожего.

2SPeller
Работа в Run-Time в различных версиях Дельфей практически не отличается, поэтому функциональная начинка страдать не будет, проблема лишь при установке компонент и редаторов свойств.
Да, но демку написанную на Д7 и Д6 ты не запустишь на Д5, ЕСЛИ НЕ УДАЛИШЬ пару свойств из ресурсов формы (untix.dfm).
Сегодня займусь проблемой совместимостии, может что и напишу...

2Gandalf
Собственно я так и делаю. Только у меня знакомые с Д6.
А когда на Д7 перейдешь? Я уже на нее перешел.

Ну и наиболее частые приемы я тоже выделил...
А не мог бы ты мне эти примеры на мыло залить?!

И плохие новости:
Хинтов в KOL не будет и SysDcu для Д7, тоже не будет.


 
Gandalf   (2003-01-07 21:30) [9]


> Хинтов в KOL не будет и SysDcu для Д7, тоже не будет.


Откуда такая увереность?!


 
Bartov   (2003-01-07 23:09) [10]

2Gandalf
Откуда такая увереность?!
Владимир Кладов так мне написал. И скоро будет KOL 1.60

Дим, если ты их сделаешь - это будет хорошо!!!


 
Art   (2003-01-07 23:26) [11]

Это хорошо что сей ништяковский продукт будет адаптирован для D7, я им пользоваться начал совсем недавно (в этом году) и скажу сразу весчь незаменимая, лучше чем на вин апи долбить и проги меньше чем на VCL, но многие компоненты на D7 действительно гонят, например сам KOL&MSK поддерживает D7, а например MHAboutDialog нет, хотелось бы полной совместимости - типа проинстолил и все, а то я даже друзьям предложить не могу они только начинают программить и таких проблем просто не вынесут.


 
Gandalf   (2003-01-08 23:55) [12]


> Дим, если ты их сделаешь - это будет хорошо!!!


Сделаем.


> например сам KOL&MSK поддерживает D7, а например MHAboutDialog
> нет, хотелось бы полной совместимости - типа проинстолил


Плохо. А в чем проблемма?


 
Bartov   (2003-01-09 01:15) [13]

2Gandalf
Ну это наверное надо пакет напсать, а то не знают еще как это делается ;-)


 
Art   (2003-01-09 01:20) [14]

Аха, а проект хороший.


 
Vladimir Kladov   (2003-01-10 07:17) [15]

(Хинтов в KOL не будет и SysDcu для Д7, тоже не будет.)
Почему же так? Может кто осмелится да сделает. Всего-то вечерок
потратить.

(Ну это наверное надо пакет напсать, а то не знают еще как это
делается ;-))
По идее, пакет от Д6 должен бы вообще без изменений подойти в Д7. В пакете для Д5 скорее всего хватит добавить designide.dcp в секцию uses.

Поэтому лучше всего пакет давать собранный для Д5 - будет
совместимость снизу вверх.

А что, D7 уже перестал глючить в окне cpu? В принципе, мне и D6
достаточно. Если бы не потребность заюзать MMX в асм-вставках, мне бы и Д5 хватило. Хотя... куда это TSpinEdit/TSpinButton в D6 пропал. Без всякого предупреждения от Инпрайс причем.


 
Bartov   (2003-01-10 17:13) [16]

2Vladimir Kladov
Хотя... куда это TSpinEdit/TSpinButton в D6 пропал.
Не знай, у меня Д6 когда-то была и они там были. Это я помню, потомучто их в курсаче использовал!!! Скорее всего у Вас какая-то урезанная версия. А проще всего это узнать - запустить хелп и ввести TSpinEdit/TSpinButton. Или при установки Samples не поставились ;-)
И на крайний случай, их с Д5 в Д6 можно перекопировать и установить и все.

А что, D7 уже перестал глючить в окне cpu?
У меня работает нормально... Пример можно этих глюков?!

и SysDcu для Д7, тоже не будет.)
Почему же так? Может кто осмелится да сделает. Всего-то вечерок
потратить.

Ага, Вы суть толком объясните, как делать их, я бы взялся. Потомучто если взять SusDcu от Д6 и переделать в Д7, то это не правильное решение. Или я не прав?


 
SPeller   (2003-01-13 09:45) [17]


> Ага, Вы суть толком объясните, как делать их, я бы взялся.
> Потомучто если взять SusDcu от Д6 и переделать в Д7, то
> это не правильное решение. Или я не прав?

Для этого нужны исходники библиотек системных. Если в них переделать код, то потом уже просто будет - скомпилировать и засунуть в нужную папку.


 
Vladimir Kladov   (2003-01-14 07:14) [18]

TSpinEdit в хэлпе только про Cylix. Найти TSpinButton не судьба: при попытке запуска справки на поиск говорит, что память кончилась. 256М ему мало.

Глюк в cpu: достаточно остановиться где угодно в kol.pas и попробовать там F8. Код из исходника, который там показывается, на 2 строки сдвинут. В принципе, та же картинка и без cpu. Синие точки стоят не напротив оттранслированных строк, а на две выше. И по ним же шагает отладчик. Страшно неудобно.

Надо не от D6 system.pas брать, а от D7. Смотреть на список изменений, сделанных в замене для D6, и исправлять system от D7. Та еще работка.


 
Vladimir Kladov   (2003-01-14 07:16) [19]


> Для этого нужны исходники библиотек системных. Если в них
> переделать код, то потом уже просто будет - скомпилировать
> и засунуть в нужную папку.

Исходники лежат в Source\Rtl\Sys\. У кого нет исходников - не надо мучиться, для перекомпиляции все равно нужна полная версия со всеми исходниками VCL.


 
Bartov   (2003-01-14 22:39) [20]

Глюк в cpu: достаточно остановиться где угодно в kol.pas и попробовать там F8. Код из исходника, который там показывается, на 2 строки сдвинут. В принципе, та же картинка и без cpu. Синие точки стоят не напротив оттранслированных строк, а на две выше. И по ним же шагает отладчик. Страшно неудобно.


Да, это так!!!
Но у меня, это происходит только для asm вставок, а pascal код все нормально. Наверно в Borland решили, что все забыли как писать на asm?!
Может кто знает, как избавится от этого глюка в Д7?

Да и вообще, че-то Д7 - карявая какая-та..., подождем Д8...
Д5 - это вещь!!!


 
Avenger [NhT]   (2003-01-15 01:29) [21]

Накатал SysDcuD7 кому надо обращайтесь...
Проги от 5.5 кил!
Скоро будут и хинты :)


 
Bartov   (2003-01-15 11:14) [22]

2Avenger [NhT]
Накатал SysDcuD7 кому надо обращайтесь...
Если не трудно отошлите на Мастак и Кладову.


 
Bartov   (2003-01-15 13:41) [23]

2Avenger [NhT]
И мне пришли, исходники и DCU


 
Bartov   (2003-01-16 00:40) [24]

Походу SysDcu for D7 Не будет?!


 
Avenger [NhT]   (2003-01-16 01:10) [25]

http://www.netcrack.by.ru/SysDcuD7.rar
Вот линк...пока бетка


 
Bartov   (2003-01-16 01:18) [26]

Ага, а когда Finall будет?


 
Bartov   (2003-01-16 01:50) [27]

2Avenger [NhT]
4. Готово! Теперь вы можите писать программы размером от 5632 байт!

Мда..., вот не задача....
Exe (чистая форма) компилится на 15360, а вот при запуску выдается ошибка - вылазит окно CPU. Хе-Хе, видно до финала далеко...


 
Avenger [NhT]   (2003-01-16 22:39) [28]

Хм..
я не пробовал проги компилить под кол там...
но вцл с заменой работают!


 
Avenger [NhT]   (2003-01-18 00:34) [29]

Залили нов. версию
И еще компонент: http://www.netcrack.by.ru/md5.rar


 
Bartov   (2003-01-18 07:29) [30]

2Avenger [NhT]
Вот теперь работает нормально (SysDcu7)!!!
Когда полный релиз выложишь?


 
Avenger [NhT]   (2003-01-19 02:38) [31]

Надо чтоб хотябы чел 10 с недельку с ним поработали...
А на 7 никто некодит ;)


 
Kladov   (2003-01-19 13:05) [32]

идеальный вариант, раз уж вы его сотворили - у вас и оставить. вдруг вы его обновить задумаете. а линк дам с удовольствием. Только желательно, чтоыб в zip"е было, не все rar"ом пользуются.

А как финал будет, можно и ко мне копию забросить. Хотя с запада жалуются, что мой сайт для них медленный :)

На бету тоже могу ссылку дать. А то сколько еще ждать пока 10 чел наберется.

Кстати, насчет совместимости (продолжая начальную тему). Есть совместимость форм сверху вниз. Формы из d6 и d7 без проблем открываются в d5. Но! если только не содержат строковых ресурсов в unicode. А если форма разработана на русском, то - уже содежит.


 
Bartov   (2003-01-20 01:18) [33]

2Kladov
Есть совместимость форм сверху вниз. Формы из d6 и d7 без проблем открываются в d5. Но! если только не содержат строковых ресурсов в unicode. А если форма разработана на русском, то - уже содежит.

Так в чем проблема то?
Написал я прогу(на Д7, попозже переведу на KOL), которая в указанном каталоге ищет *.dfm и в них меняет Caption = #1099#1095... на русскую строку. Все просто... И если потом в Д7 не менять Caption, то Д7 ничего менятся не будет.

Вот ф-ция:
function Unic2Str(Str: string): string;
var
x, z: Integer;
tmp: string;
begin
x := Pos("#", Str);
repeat
tmp := Str[x + 1] + Str[x + 2] + Str[x + 3] + Str[x + 4];
Delete(Str, x, 5);
z := StrToInt(tmp) - 848;
Insert(Char(z), Str, x);
x := Pos("#", Str);
until x = 0;

x := Pos("""", Str);
repeat
Delete(Str, x, 1);
x := Pos("""", Str);
until x = 0;

Result := Str;
end;


function isUnicStr(Str: string): Boolean;
var
x: Integer;
begin
Result := FALSE;
x := Pos("#", Str);
if x > 0 then
if (x + 4) >= Length(Str) then
if (Str[x + 1] in ["0".."9"]) and (Str[x + 2] in ["0".."9"]) and
( Str[x + 3] in ["0".."9"])
2Kladov
Есть совместимость форм сверху вниз. Формы из d6 и d7 без проблем открываются в d5. Но! если только не содержат строковых ресурсов в unicode. А если форма разработана на русском, то - уже содежит.

Так в чем проблема то?
Написал я прогу(на Д7, попозже переведу на KOL), которая в указанном каталоге ищет *.dfm и в них меняет Caption = #1099#1095... на русскую строку. Все просто... И если потом в Д7 не менять Caption, то Д7 ничего менятся не будет.

Вот ф-ция:
function Unic2Str(Str: string): string;
var
x, z: Integer;
tmp: string;
begin
x := Pos("#", Str);
repeat
tmp := Str[x + 1] + Str[x + 2] + Str[x + 3] + Str[x + 4];
Delete(Str, x, 5);
z := StrToInt(tmp) - 848;
Insert(Char(z), Str, x);
x := Pos("#", Str);
until x = 0;

x := Pos("""", Str);
repeat
Delete(Str, x, 1);
x := Pos("""", Str);
until x = 0;

Result := Str;
end;


function isUnicStr(Str: string): Boolean;
var
x: Integer;
begin
Result := FALSE;
x := Pos("#", Str);
if x > 0 then
if (x + 4) >= Length(Str) then
if (Str[x + 1] in ["0".."9"]) and (Str[x + 2] in ["0".."9"]) and
(Str[x + 3] in ["0".."9"]) and (Str[x + 4] in ["0".."9"]) then
Result := TRUE;
end;


 
Bartov   (2003-01-20 01:42) [34]

2ALL
Я тут еще подумал чуток, стоит ли писать программку на KOL для перевода в dfm"и unicode в string или сами напишити?

2Kladov
Хотя с запада жалуются, что мой сайт для них медленный :)
Насколько я помню отослал Вам компонент(обновление), Вы его месяц выкладываете... ;-)

И че-то иходники SysDcu для Д5 и Д6 не компилятся...


 
Avenger [NhT]   (2003-01-20 02:09) [35]

Сайт медленный это точно..
Все компилится...я пришлю завтра-послезавтра тебе сурсы..
А вот насчет перекодировщика, то был в кладовке такой если надо то вышлю сурс..могу также перекодить на кол, авл, акл или на апи(быстро не ждите :) но там есть несколько багов, да и основа изменилась, были траблы с BiDiMode


 
Bartov   (2003-01-20 08:23) [36]

2Avenger [NhT]
Ждемс... Ты мое письмо получил?


 
tamerlan311   (2003-01-20 14:47) [37]

я програмлю на D7 и в принциме мог побыть бета-тестером этого пакета, но незнаю как получится со временем , и я потихоньку сползаю на API!



Страницы: 1 вся ветка

Форум: "KOL";
Текущий архив: 2003.09.25;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.56 MB
Время: 0.011 c
1-82182
Nerv
2003-09-12 16:54
2003.09.25
Про пиктограмму


7-82509
Sashko
2003-07-14 16:02
2003.09.25
Доступ к CD-ROM


14-82447
Soft
2003-09-07 13:58
2003.09.25
Что такое ЗЛО?


3-82153
Max_
2003-09-05 17:22
2003.09.25
Oracle+ExecSql+Open


4-82542
xZero
2003-07-23 23:28
2003.09.25
.LNK файлы





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский