Board.KolibriOS.org

Официальный форум KolibriOS
Текущее время: Сб сен 22, 2018 10:33 am

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 23 сообщения ]  На страницу Пред. 1 2
Автор Сообщение
 Заголовок сообщения: Re: Delphi7 examples
СообщениеДобавлено: Вт окт 03, 2017 3:07 pm 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1380
In this example the window can be moved by arrow keys and can be resized by Ctrl+arrow keys.
Used functions: SetWindowPos, GetThreadInfo, GetControlKeyState, GetKey, GetScreenSize, WaitEvent, BeginDraw, DrawWindow, DrawText, EndDraw, GetButton, ThreadTerminate.

Screenshot:
Спойлер: Показать
Вложение:
17.PNG
17.PNG [ 3.82 КБ | 606 просмотров ]

Source:
Вложение:
{17} SetWindowPos.7z [1.07 КБ]
32 скачивания


Вернуться к началу
 Заголовок сообщения: Re: Delphi7 examples
СообщениеДобавлено: Пт фев 16, 2018 7:23 pm 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1380
This example shows the name of process whose window is under the mouse pointer.
Note that desktop has no window therefore name will be 'IDLE' (name of special system process).
Used functions: GetPointOwner, WaitEventByTime, GetThreadInfo, GetMousePos, GetScreenSize, SetEventMask, BeginDraw, DrawWindow, DrawText, EndDraw, DrawRectangle, GetButton, ThreadTerminate.

Screenshot:
Спойлер: Показать
Вложение:
18.PNG
18.PNG [ 1.76 КБ | 546 просмотров ]

Source:
Вложение:
{18} GetPointOwner, WaitEventByTime, GetThreadInfo.7z [1.06 КБ]
27 скачиваний


Вернуться к началу
 Заголовок сообщения: Re: Delphi7 examples
СообщениеДобавлено: Вс сен 09, 2018 2:27 pm 
Не в сети

Зарегистрирован: Вт мар 08, 2016 11:00 pm
Сообщения: 330
Как насчет перевести свои наработки с пиратки на официально бесплатную Делфи Токио Стартер/Коммьюнити?

Это бы было правильно для отрытой Оси

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


Вернуться к началу
 Заголовок сообщения: Re: Delphi7 examples
СообщениеДобавлено: Пн сен 10, 2018 11:15 am 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1380
Siemargl писал(а):
с пиратки на официально бесплатную
:lol: вся суть!

Возможно, у тебя лично и пиратка, но никто никого не заставляет ничего пиратить.

А в чём, собственно, принципиальная проблема переноса?
У меня просто нет Tokyo, чтобы проверить.

И, кстати, FreePascal ещё есть.
Lode Runner собран им http://websvn.kolibrios.org/listing.php ... d8f767cc2a
Правда, ещё нужна RTL http://websvn.kolibrios.org/listing.php ... 6668893f98


Вернуться к началу
 Заголовок сообщения: Re: Delphi7 examples
СообщениеДобавлено: Вт сен 11, 2018 12:38 am 
Не в сети

Зарегистрирован: Вт мар 08, 2016 11:00 pm
Сообщения: 330
0CodErr писал(а):
Siemargl писал(а):
с пиратки на официально бесплатную
:lol: вся суть!

Возможно, у тебя лично и пиратка, но никто никого не заставляет ничего пиратить.
Те ты предлагаешь нубам купить Про за 1000$ ?
Чтобы просто иметь возможность использовать Паскаль для Колибри.
0CodErr писал(а):
А в чём, собственно, принципиальная проблема переноса?
У меня просто нет Tokyo, чтобы проверить.
Дык зарегистрируйся и скачай.
https://www.embarcadero.com/products/delphi/starter
0CodErr писал(а):

И, кстати, FreePascal ещё есть.
Lode Runner собран им http://websvn.kolibrios.org/listing.php ... d8f767cc2a
Правда, ещё нужна RTL http://websvn.kolibrios.org/listing.php ... 6668893f98

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


Вернуться к началу
 Заголовок сообщения: Re: Delphi7 examples
СообщениеДобавлено: Вт сен 11, 2018 9:25 am 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1380
Siemargl писал(а):
Те ты предлагаешь нубам купить Про за 1000$ ?
Нубам я вообще ничего не предлагаю.
Siemargl писал(а):
0CodErr писал(а):
А в чём, собственно, принципиальная проблема переноса?
У меня просто нет Tokyo, чтобы проверить.
Дык зарегистрируйся и скачай.
https://www.embarcadero.com/products/delphi/starter
Ты на вопрос так и не ответил. Простой перекомпиляции недостаточно? Что конкретно вызывает проблемы?
Siemargl писал(а):
0CodErr писал(а):
И, кстати, FreePascal ещё есть.
Lode Runner собран им http://websvn.kolibrios.org/listing.php ... d8f767cc2a
Правда, ещё нужна RTL http://websvn.kolibrios.org/listing.php ... 6668893f98

Я не проверял возможность сборки этого актуальной версией FP, и считал эту ветку неживой для Колибри.
Тем более, что ты либу тоже под FP не проверяешь.
А стоило бы. Товарищ //DG говорил, что версия 3.0 стала более совместимой, а в версии 2.4.4 были проблемы.


Вернуться к началу
 Заголовок сообщения: Re: Delphi7 examples
СообщениеДобавлено: Ср сен 12, 2018 11:21 am 
Не в сети

Зарегистрирован: Вт мар 08, 2016 11:00 pm
Сообщения: 330
0CodErr писал(а):
Ты на вопрос так и не ответил. Простой перекомпиляции недостаточно? Что конкретно вызывает проблемы?
У меня нет Дельфи СЕ и нет легальной возможности ее получить, т.к. уже зарегистрирован CBuilder Starter, а и то и то одновременно на халяву не положено.
0CodErr писал(а):
Siemargl писал(а):
Я не проверял возможность сборки этого актуальной версией FP, и считал эту ветку неживой для Колибри.
Тем более, что ты либу тоже под FP не проверяешь.
А стоило бы. Товарищ //DG говорил, что версия 3.0 стала более совместимой, а в версии 2.4.4 были проблемы.

Я не нашел упоминаний от //DG, что там вообще были за проблемы.

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


Вернуться к началу
 Заголовок сообщения: Re: Delphi7 examples
СообщениеДобавлено: Чт сен 13, 2018 9:02 am 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1380
Siemargl писал(а):
У меня нет Дельфи СЕ и нет легальной возможности ее получить
Зачем же ты тогда предлагал что-то перенести? Может оно и так работает? Пока ещё никто о проблемах не писал(кроме тебя, но сам ты даже и не пробовал).
Siemargl писал(а):
Я не нашел упоминаний от //DG, что там вообще были за проблемы.
Этот диалог был в ЛС:
0CodErr писал(а):
Кое-что у FPC работает не так, как в Delphi, например, для GetScreenSize пришлось немного извратиться, в то время как Delphi кладёт результат в eax, как и положено:
на FP
Спойлер: Показать
Код:
Function GetScreenSize: SIZE;
Asm
        mov      ecx, eax
        push   ebx
        mov    eax, 61
        mov    ebx, 1
        int    64
        pop    ebx
        mov    dword[ecx], eax
End;
на Delphi
Спойлер: Показать
Код:
Function GetScreenSize(): SIZE;
Asm
        push   ebx
        mov    eax, 61
        mov    ebx, 1
        int    64
        pop    ebx
End;
Так что, не всё можно просто так взять и перенести.
//DG писал(а):
Кстати, по поводу разницы между Д и ФП - не могу с тобой согласиться. Сделал тест, все так же - структура передана через регистр:

Код:
  TMyRec = record
    a: word;
    b: word;
  end;

//  function MyProc(): TMyRec;
//  begin
//    Result.a := 1;
//    Result.b := 2;
//  end;

{$ASMMODE   intel}
function MyProc(): TMyRec; assembler;
asm
   mov eax,10102020h
end;

procedure TMyApplication.DoRun;
var
  ErrorMsg: String;
  a:tmyrec;
begin
  a := MyProc();

0CodErr писал(а):
Код:
//////////////////////////////////////////
 Type
  SIZE = Record height, width : Word End;
////////////////////////////////////////// 
  Scr : SIZE;
//////////////////////////////////////////
Scr := GetScreenSize;
//////////////////////////////////////////
Function GetScreenSize: SIZE;
Asm
        mov      ecx, eax
        push   ebx
        mov    eax, 61
        mov    ebx, 1
        int    64
        pop    ebx
        mov    dword[ecx], eax
End;
в результате так
Код:
      sub   esp,4
      lea   eax,[ebp-4]
      call   NEAR TEST_GETSCREENSIZE$$SIZE
      mov   eax,dword [ebp-4]
      mov   dword [U_TEST_SCR],eax 

На всякий случай, это был Free Pascal Compiler version 2.4.4 [2011/04/23] for i386
Copyright (c) 1993-2010 by Florian Klaempfl

Так что, если ещё и от версий зависит... слишком много будет conditional define'ов.
//DG писал(а):
Я скорее думаю, это от опций компилирования зависит.
//DG писал(а):
Твой пример у меня в 3,0,0 также через регистр возвращает.
//DG писал(а):
А режим компиляции(точнее, синтаксиса)-то какой?
0CodErr писал(а):
//DG писал(а):
А режим компиляции(точнее, синтаксиса)-то какой?
Я специально его не указывал, но вот из документации:
Цитата:
This mode is selected by the $MODE FPC switch. On the command line, this means that you
none of the other compatibility mode switches. It is the default mode of the compiler (-Mfpc).
Значит был режим FPC.
//DG писал(а):
Цитата:
Значит был режим FPC.

Вот и я про то же, раз не указывал, то беретс fpc. А он и не должен быть совместимым с Дельфи, так что все путем. objfpc совместим, и он пересылает через регистр.
0CodErr писал(а):
Попробовал {$MODE OBJFPC} и {$MODE DELPHI}, — результат тот же, значит, тогда от версии зависит наверное.
//DG писал(а):
Цитата:
Попробовал {$MODE OBJFPC} и {$MODE DELPHI}, — результат тот же, значит, тогда от версии зависит наверное.

Наверно, я на последней тройке пробую.


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 23 сообщения ]  На страницу Пред. 1 2

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB