Board.KolibriOS.org

Official KolibriOS board
It is currently Mon Apr 22, 2019 9:23 am

All times are UTC+03:00




Post new topic  Reply to topic  [ 18 posts ]  Go to page 1 2 Next
Author Message
 Post subject: Delphi & PEload
PostPosted: Wed Oct 12, 2016 6:42 pm 
Offline

Joined: Sat Nov 14, 2015 11:15 am
Posts: 299
Delphi & PEload
Созданная 0CodErr`ом утилита PELoad ( viewtopic.php?f=9&t=2318 ) , натолкнула меня на мысль создать такой пакет, который облегчит пользователям написание программ, в среде Delphi и использование PELoad. И вот предлагаю вашему внимаю пакет содержащий модули, утилиты и примеры, с помощью которого будет удобно использование примеров и написание программ, а также их визуализация эмулятором KlbrInWin. Данный пакет не является совершенством и "последней инстанцией", он, а точнее говоря его модули и примеры будет постоянно совершенствоваться и добавляться. Надеюсь на помощь
пользователей в написании примеров и различных обёрток для функций КОС, которые могут дополнить данный пакет.
Attachment:
DelphiPEload.zip [244.65 KiB]
Downloaded 98 times


Общее описание.
DelphiPEload предназначен для разработки программ для среды КОС в среде Delphi, в частности в среде Delphi7, в которой были созданы и проверялись на работоспособность модули и примеры архива.

Описание папок и файлов.
_DOC — папка с документацией и описанием DelphiPEload
_Unit — папка содержащая модули проекта и шаблон (NewProect(pattern)) всех необходимых файлов для создания нового проекта, при запуске NewProect.bat
_Util — папка содержащая все необходимые утилиты пакета DelphiPEload
NewProect.bat — для создания нового проекта, папки NewProect, в папке DelphiPEload и копирования всех необходимых файлов из шаблона _Unit\NewProect(pattern) в папку NewProect
Остальные папки которые в папке DelphiPEload, являются примерами:
CreateFile, DrawButton, DrawText, HelloDelphi, PutPixel, Scrollbar

Порядок работы с DelphiPEload в простом изложении.
Для начала оговорюсь о том, что является понятием “оригинальная КОС”, которое будет встречаться далее в описаниях и инструкциях. Под понятием “оригинальная КОС” подразумевается использование КОС без эмуляторов подобных QEMU и других способных эмулировать КОС, т. е. КОС которая установлена как ОС самого компьютера, а не эмулятора.

DelphiPEload должна быть работоспособна в любой папке и на любом диске. Но поскольку её работоспособность проверялись лишь на диске C:\ в корневой папке,то распакуйте архив DelphiPEload.zip на диск C:\ в корневую папку.

Для того чтобы запустить примеры, в эмуляторе KlbrInWin, войдите в любую из папок примеров и запустите runProject.bat. При этом на диске C:\ создаётся папка TempKOS содержащая файлы необходимые для запуска примера в KlbrInWin. Папка является временной и может быть удалена после использования DelphiPEload. В папке c:\TempKOS также находится файл run_in_KOS.sh с помощью которого можно запускать программу в QEMU или в “оригинальной КОС” из папки c:\TempKOS. Также этот же файл (run_in_KOS.sh) находится в папке с примером, поэтому в папке с примером его тоже можно запустить в QEMU или в “оригинальной КОС”.
Примечания.
1. Для запуска программы в QEMU или в “оригинальной КОС”, необходимо предварительно запустить fNav, (файловый навигатор для о.с. Колибри) из которого и нужно запускать run_in_KOS.sh. Файловый навигатор fNav находится в папке _Util , при необходимости скопируйте (или перенесите его) в нужное вам место, DelphiPEload не использует fNav.
2. Некоторые из примеров могут быть не работоспособны в эмуляторе KlbrInWin, причины этого будут выясняться, хотя, возможно это будет не разрешимо для эмулятора KlbrInWin.

Для того чтобы начать новый проект, необходимо запустить NewProect.bat.
В папке DelphiPEload, появится в папка NewProect, которую сразу же рекомендуется переименовать в нужное вам название проекта, во избежание его случайного повреждения, повторным запуском NewProect.bat, который скопирует файлы шаблона поверх вашего проекта! Будьте внимательны!
Откроем среду Delphi (Delphi7) и в ней откроем ProjectKOS.dpr и uMain.pas, отредактируем uMain.pas, и скомпилируем проект (кл.Ctrl+F9). Далее запустим из папки проекта runProject.bat который сделает всё необходимое для запуска программы.
Примечания.
1. Программа не запустится и да не должна запускаться в среде Delphi (Delphi7). Поэтому, при запуске (кл.F9), в среде Delphi (Delphi7) среда выдаст ошибку, что не является, чем-то ненормальным.
2. Название ProjectKOS.dpr изменять не нужно, так как в файле runProject.bat прописаны "привязки" к данному имени и если его изменить, то придётся изменять содержимое runProject.bat, так как проект не будет запускаться.
3. Также не нужно изменять папку C:\TempKOS\ на использование другой папки, потому, что придётся менять настройки в KlbrInWin.ini (hd0_1=c:\) для того, чтобы проект мог запускаться в KlbrInWin.

Ну вот пока и всё.
Будут вопросы пишите в тему "Delphi&PEload”
на форуме http://board.kolibrios.org

Автор Delphi&PEload выражает благодарность создателю, 0CodErr` у, за созданную им утилиту PELoad, а также за выложенный архив DelphiKOS.7z, в теме "PELoad" ( viewtopic.php?f=9&t=2318 ), примеры которых в есть в архиве "Delphi&PEload", - CreateFile, DrawButton, DrawText, HelloDelphi, Scrollbar.


Top
   
 Post subject: Re: Delphi & PEload
PostPosted: Wed Oct 12, 2016 8:11 pm 
Offline

Joined: Sat Nov 14, 2015 11:15 am
Posts: 299
А вот если бы еще заняться вот этим:
МЭФК ( KOS.dll ) viewtopic.php?f=39&t=3205
который я когда-то начал писать на Delphi7, и связать его с DelphiPEload, то его бы можно было использовать вместо KlbrInWin. И было бы это лучше чем KlbrInWin, - запускать можно бы было проект в винде, и пошагово (кл.F7, кл.F8 )"прокурчивать" проект!
Во как!


Top
   
 Post subject: Re: Delphi & PEload
PostPosted: Thu Oct 13, 2016 10:45 am 
Offline

Joined: Sat Nov 14, 2015 11:15 am
Posts: 299
Кто хочет обновиться :-) вот пожалуйста
Attachment:
DelphiPEload_0001up1.zip [46.78 KiB]
Downloaded 82 times

изменения в модулях и добавлено два примера DrawLine и DrawRect.
Распаковать и перезаписать файлы в DelphiPEload.
====================
Что !?... Мало кто хочет обновиться (DelphiPEload.zip [244.65 КБ] 1 скачивание ), - ну ничё, ничё, - просто еще не время! Придёт и «наше время», ой придёт! :-)


Top
   
 Post subject: Re: Delphi & PEload
PostPosted: Thu Oct 13, 2016 11:34 am 
Offline

Joined: Sat Nov 14, 2015 11:15 am
Posts: 299
Собираюсь писать конвертировщик для строк, ANSItoKOS (KOStoANSI) . Может есть уже готовый код на любом ЯП киньте плиз ссылку на тот код (или в крайнем случае таблицу )


Top
   
 Post subject: Re: Delphi & PEload
PostPosted: Thu Oct 13, 2016 12:09 pm 
Offline

Joined: Sat Nov 14, 2015 11:15 am
Posts: 299
0CodErr, мне в лс "красиво" всё расписал как можно использовать ShortString... :-))
но дальше, чем просто присвоить строке статические данные, шото у меня дело не доходит!
вот в реальности когда понадобиться делать, например, вот такое s1:=s1+s2+s3[2]....
Так фиг оно работает! такая же картина с String, а PCar вообще не понятки!
Еще раз говорю: может изначально другой подход выберем, например
type stringKOS= array[0..256] of Char;
или даже
type stringKOS= array[0..256] of Byte;
а не of Char;
А ? С Char гляжу тоже непонятки когда делаешь S:=s+c; - не работает ведь!
Пример моих эксперементов:
Code:
Procedure DrawShortString(X, Y: Integer; Text: ShortString; ForeColor, BackColor, Flags: Integer);stdcall;
Begin
  DrawText(X, Y, @Text[1], ForeColor, BackColor, Flags And Not DT_ZSTRING, Integer(Text[0]));
End;
Procedure DrawShortString2(Text: ShortString);
begin
DrawText( 10, 12, @Text[1], COLOR_BLACK, COLOR_WHITE,DT_CP866_6X9 + DT_FILL_OPAQUE + DT_ZSTRING, 0);
end;


Procedure RedrawString;
Var i: Cardinal; s1,s2,s3:string; ss1,ss2,ss3:ShortString;
c:Char; ck:Byte;
begin
//  c:=s[4];
//c:='d';
//ck:=ord('d');
//s2:='2333333';s3:='Test DrawText'+'s sdfsdfsdf +'+s2[2];//#39;//chr(ck);//+c
//ss2:='2333333';ss3:='Test DrawText'+'s sdfsdfsdf +'+s2[2];//#39;//chr(ck);//+c
//  s1:='Test DrawText'+'s sdfsdfsdf +'+s2[2];//#39;//chr(ck);//+c
//  s1:=ss2;//+ss3;
// @S3[1]
//DrawText( 10, 12, PChar(s1), COLOR_BLACK, COLOR_WHITE,DT_CP866_6X9 + DT_FILL_OPAQUE + DT_ZSTRING, 0);
//DrawText( 10, 12, 'Test DrawText', COLOR_BLACK, COLOR_WHITE,DT_CP866_6X9 + DT_FILL_OPAQUE + DT_ZSTRING, 0);
ss2:='dwdfsd sd';ss3:='2324243242';
//ss1:=ss2+ss3;
ss1:=ss2+'sdsd';//ss3;
DrawShortString2(ss1);
//DrawShortString( 10, 12, 'Test DrawText', COLOR_BLACK, COLOR_WHITE,DT_CP866_6X9 + DT_FILL_OPAQUE + DT_ZSTRING);
end;


Top
   
 Post subject: Re: Delphi & PEload
PostPosted: Thu Oct 13, 2016 12:16 pm 
Offline

Joined: Sun Oct 30, 2011 6:43 pm
Posts: 1499
Quote:
Собираюсь писать конвертировщик для строк, ANSItoKOS (KOStoANSI) .
Не знаю уж, что ты там опять городить собрался.
Но про строки я тебе уже давал ссылки, но ты видимо не проникся.
Тонкости работы со строками: http://delphikingdom.com/asp/viewitem.a ... logID=1206
Строки в Delphi: http://easyprog.ru/index.php?id=218&opt ... &task=view
Quote:
но дальше, чем просто присвоить строке статические данные, шото у меня дело не доходит!
вот в реальности когда понадобиться делать, например, вот такое s1:=s1+s2+s3[2]....
StrCopy\StrCat в помощь:
Code:
Var
   MyStr1: Array[0..63] Of Char;
   MyStr2: Array[0..63] Of Char;
   MyStr3: Array[0..63] Of Char;
////////////////////////////////   
   MyStr1 := '12345';
   MyStr2 := '67890';
   StrCopy(MyStr3, MyStr1);
   StrCat(MyStr3, MyStr2);   
////////////////////////////////   
   DrawStr(10, 80, MyStr3, COLOR_BLACK, COLOR_RED, DT_CP866_6X9); 


Top
   
 Post subject: Re: Delphi & PEload
PostPosted: Thu Oct 13, 2016 12:46 pm 
Offline

Joined: Sat Nov 14, 2015 11:15 am
Posts: 299
0CodErr wrote:
Quote:
Собираюсь писать конвертировщик для строк, ANSItoKOS (KOStoANSI) .
Не знаю уж, что ты там опять городить собрался.
Но про строки я тебе уже давал ссылки, но ты видимо не проникся.
Тонкости работы со строками: http://delphikingdom.com/asp/viewitem.a ... logID=1206
Строки в Delphi: http://easyprog.ru/index.php?id=218&opt ... &task=view

Видимо нет! Не проникся! И даже понять не могу, чем мне те тексты помогут если я захочу написать "Привет мир" вместо стандартного "Hello world"!
Ну да ладно, перечитаю еще раз!
==============
дАрАгой, :-) а вот чего ты злишься? мы ведь с тобой про одно и тоже, - что СТРОКИ
String, ShortString использовать (!!!АКТИВНО ИСПОЛЬЗОВАТЬ!!!) НЕЛЬЗЯ! и твой пример где есть:
Var
MyStr1: Array[0..63] Of Char;
MyStr2: Array[0..63] Of Char;
MyStr3: Array[0..63] Of Char;

Array и Of Char; ВСЁ ТАКИ!, а не String, ShortString и PChar
ЭТО ПОКАЗЫВАЕТ И ДОКАЗЫВАЕТ! Я только предложил немного по другому!
Спасибо за пример. работает:
Code:
Procedure RedrawString;
Var
   MyStr1: Array[0..63] Of Char;
   MyStr2: Array[0..63] Of Char;
   MyStr3: Array[0..63] Of Char;
begin
   MyStr1 := '12345';
   MyStr2 := '67890';
   StrCopy(MyStr3, MyStr1);
   StrCat(MyStr3, MyStr2);
DrawShortString(10, 80, MyStr3, COLOR_BLACK, COLOR_RED, DT_CP866_6X9);
end;


Top
   
 Post subject: Re: Delphi & PEload
PostPosted: Thu Oct 13, 2016 1:00 pm 
Offline

Joined: Sun Oct 30, 2011 6:43 pm
Posts: 1499
Quote:
Видимо нет! Не проникся! И даже понять не могу, чем мне те тексты помогут если я захочу написать "Привет мир" вместо стандартного "Hello world"!
Мдам... плохо быть тобой :lol:
Quote:
Array и Of Char; ВСЁ ТАКИ!, а не String, ShortString и PChar
Если бы ты всё-таки прошёл по ссылкам и почитал, то у тебя бы таких вопросов больше не возникало. Вот, например, про не понятный тебе PChar
Quote:
PChar - нультерминальная строка

pstr: PChar; - это нультерминальная строка (zero-terminated, иначе еще называется срока с завершающим нулем). Так называется, потому что представляет собой указатель на цепочку символов, заканчивающуюся терминальным нулем #0. Ее еще называют сишной строкой (из языка С, там она определяется как char*).
А ShortString — это пожалуйста. В System есть _PStrCpy, _PStrCat и т.д.
Quote:
ЭТО ПОКАЗЫВАЕТ И ДОКАЗЫВАЕТ
что ты большой лентяй :lol:


Top
   
 Post subject: Re: Delphi & PEload
PostPosted: Thu Oct 13, 2016 2:30 pm 
Offline

Joined: Sat Nov 14, 2015 11:15 am
Posts: 299
Попытаюсь объяснить популярно.
Однажды я читая о дельфе и попалась мне тема о PChar. Я бегло прочитав, понял, что это не для меня, и что не зная особенности этой PChar, можно жить долго и счастливо :-) со string, и не париться на всякой фигне такой как PChar! И вот с тех пор я жил и жизни радовался со string, где всё вполне понятно и да выглядит симпатично! И даже если касалось где-то, что в процедуру необходимо передавать PChar, то я делал PChar(s), в самый последний момент, т.е. при самой передаче в процедура! И ву-аля!
Вот и сейчас бы я тоже не парился, если бы проблема решалась, через PChar(s), в самый последний момент... Но ведь не работает так(!) при предшествующем подобном s1:=s2+s3; s1:=s2+s3[3], да и много чего не работает так как хочется! Ну нашёл я описание процедур по обработке PChar...
Spoiler: Show
Справочник по функциям Delphi. Функции работы со строками типа PChar

А эта таблица содержит функции для работы со строками типа PChar (также находятся в модуле SYSUTILS):
function StrLen(Str: PChar): Cardinal; Возвращает число символов в строке Str (без учета завершающего нулевого).
function StrEnd(Str: PChar): PChar; Возвращает указатель на завершающий нулевой символ строки Str.
function StrMove(Dest, Source: PChar; Count: Cardinal): PChar; Копирует из строки Source в строку Dest ровно Count символов, причем строки могут перекрываться.
function StrCopy(Dest, Source: PChar) : PChar; Копирует Source в Dest и возвращает указатель на Dest.
function StrECopy(Dest, Source: PChar): PChar; Копирует Source в Dest и возвращает указатель на завершающий символ Dest.
function StrLCopy(Dest, Source: PChar; MaxLen: Cardinal): PChar; Работает как StrCopy, но копирует не более MaxLen символов.
function StrPCopy(Dest: PChar; const Source: String): PChar; Копирует строку Source (типа string) в Dest и возвращает указатель на Dest.
function StrPLCopy(Gest: PChar; const Source: string; MaxLen: Cardinal): PСhar; Работает как StrPCopy, но копирует не более MaxLen символов.
function StrCat(Dest, Source: PChar): PChar; Дописывает Source к концу Dest и возвращает указатель на Dest.
function StrLCat(Dest, Source: PChar; MaxLen: Cardinal): PChar; Работает как StrCat, но копирует не более MaxLen-StrLen(Dest) символов.
function StrComp(Str1, Str2: PChar): Integer; Сравнивает две строки (посимвольно). Возвращает значение: <0 ? при StrKStr2, 0 ? при Strl=Str2, >0 ? при Strl>Str2.
function StrIComp(Str1, Str2: PChar): Integer; Работает как StrComp, но без учета регистра символов.
function StrLComp(Str1, Str2: PChar; MaxLen: Cardinal): Integer; Работает как StrComp, но сравнение происходит на протяжении не более чем MaxLen символов.
function StrLIComp(Str1, Str2: PChar; MaxLen: Cardinal): Integer; Работает как StrLComp, но без учета регистра символов.
function StrScan(Str: PChar; Chr: Char): PChar; Отыскивает первое вхождение символа Chr в строку Str и возвращает указатель на него или nil в случае отстутствия.
function StrRScan(Str: PChar; Chr: Char): PChar; Работает как StrScan, но отыскивается последнее вхождение Chr.
function StrPos(Str1, Str2: PChar): PChar; Отыскивает первое вхождение строки Str2 в строку Strl и возвращает указатель на нее или nil в случае отстутствия.
function StrUpper(Str: PChar): PChar; Преобразует строку к верхнему регистру.
function StrLower(Str: PChar): PChar; Преобразует строку к нижнему регистру.
function StrPas(Str: PChar): String; Преобразует строку Str в строку типа string.
function StrAlloc(Size: Cardinal): PChar; Размещает в куче памяти новую строку размером Size и возвращает указатель на нее.
function StrBufSize(Str: PChar): Cardinal- Возвращает размер блока памяти, выделенного для строки при помощи функции StrAlloc.
function StrNew(Str: PChar): PChar; Размещает в куче памяти копию строки Str и возвращает указатель на нее.
procedure StrDispose(Str: PChar); Уничтожает строку, размещенную при помощи StrAlloc или StrNew.

Глянул, - о ужас! Даже не ужас, а ужОс! А коснись в реальности, - еще ужасы какие-но "нарисуются"!

А ведь 0CodErr так усердно "распинался" - "да всё тут будет как в дельфе! " Да нет, - не всё! Заморочки на заморочках! string не работает используй PChar... вот только если #0 попадётся в строке, то оно её на этом #0 и "отрубится", и концов не найдёшь! Ну так ведь? Да и эти PChar не реальные переменные, содержащие данные, а ссылки какие-то, так ведь ?
И вот скажи пожалуйста нафига ты мене вместо аналога string предлагаешь разную фигню, ну ЯВНО НЕ БЛЕЩАЩУЮ И НЕ СРАВНИМУЮ со string?! Ну сотни раз уже "кругами" вокруг этих ShortString, String, - а 0CodErr, опять мне пишет: "В System есть _PStrCpy, _PStrCat и т.д.", - а я уже знаю(!), что попробую это, опять какая-то фигня "выползет"....
И вот я принял решение создать самому то, что мне нужно. И вместо того, чтобы 0CodErr мне отписал: "... ну если уж самому делать, так тогда лучше всего за основу взять вот такое: type stringKOS= array[0..256] of Char; и будет тебе доступно всё, и соответственно сможешь сделать любую обработку этого массива данных какую только захочешь!...". Но нет, он мне все "вокруг" PChar, ShortString, String, которые, -
ОЧЕРЕДНОЙ РАЗ ПОВТОРЯЮ: ИСПОЛЬЗОВАТЬ НЕЛЬЗЯ!


Top
   
 Post subject: Re: Delphi & PEload
PostPosted: Thu Oct 13, 2016 2:49 pm 
Offline

Joined: Sat Nov 14, 2015 11:15 am
Posts: 299
...... А вот тебе и еще "прикол":
Code:
Procedure RedrawString;
Var
   MyStr1: Array[0..63] Of Char;
   MyStr2: Array[0..63] Of Char;
  MyStr3: Array[0..63] Of Char;
c:Char;
begin
   MyStr1 := '12345';
   MyStr2 := '67890';
   StrCopy(MyStr3, MyStr1);
c:=MyStr1[3];
   StrCat(MyStr3, PChar(c));
DrawShortString(10, 80, MyStr3, COLOR_BLACK, COLOR_RED, DT_CP866_6X9);
end;

Симпатично выгладит да ? И компилируется! И запускается!
А ВОТ РАБОТАЕТ НЕПРАВИЛЬНО!


Top
   
 Post subject: Re: Delphi & PEload
PostPosted: Thu Oct 13, 2016 2:55 pm 
Offline

Joined: Sun Oct 30, 2011 6:43 pm
Posts: 1499
Да, тебе похоже на форум про Delphi надо. :)
Quote:
используй PChar... вот только если #0 попадётся в строке, то оно её на этом #0 и "отрубится", и концов не найдёшь!
Ох, лол :lol: , а сам ведь при этом городит какой-то KOStoANSI, в то время, как в KolibriOS как раз и используются те самые zero-terminated строки.
Quote:
Глянул, - о ужас! Даже не ужас, а ужОс! А коснись в реальности, - еще ужасы какие-но "нарисуются"!
И как же ты жил-то до сих пор? :lol:
Quote:
И вот я принял решение создать самому то, что мне нужно.
Quote:
лучше всего за основу взять вот такое: type stringKOS= array[0..256] of Char;
Вот PChar и есть указатель на такой массив.
Говоря проще — всё уже за тебя давно придумано, надо лишь читать, изучать, учиться, а ты почему-то ленишься делать это, но не ленишься писать сюда простыни возмущений "ниработает", "ниполучается".
Quote:
А ВОТ РАБОТАЕТ НЕПРАВИЛЬНО!
Компьютер, он, понимаешь, штука такая: что ввёл, то и получил, ввёл фигню — получил фигню.


Top
   
 Post subject: Re: Delphi & PEload
PostPosted: Thu Oct 13, 2016 4:07 pm 
Offline

Joined: Sat Nov 14, 2015 11:15 am
Posts: 299
0CodErr wrote:
Ох, лол :lol: , а сам ведь при этом городит какой-то KOStoANSI, в то время, как в KolibriOS как раз и используются те самые zero-terminated строки.

Ну блин! Да тут не только про KOStoANSI речь идёт! Хочется, аналог string чтобы был, а не заменители какие-то, при которых каждый раз изъё*йся по разному(!), владея обширной базой знаний о дельфи!....
0CodErr, ну ты же не глупый человек и прекрасно понимаешь что такого не должно быть! То, что ты мне рассказываешь и предлагаешь, это равносильно, - что у процессора есть регистры и присваивать друг-другу их надо не через "mov", а каждый раз изъё*ваться по разному(!).... владея обширной базой знаний об асме!
Я тебя только так понимаю! У тебя всё только к такому сводится!
0CodErr wrote:
И как же ты жил-то до сих пор?

Я писал уже, - везде использовал string, это очень удобно и понятно!
0CodErr wrote:
Вот PChar и есть указатель на такой массив.

Ага! Я уже понял! А также пробовал его использовать!
0CodErr wrote:
а ты почему-то ленишься делать это, но не ленишься писать сюда простыни возмущений "ниработает", "ниполучается".

?!?!? а--а-а-а-а вообще.... а-а-а-а- форумы для чего.... писать или как?!... ну коль не работает, я пишу, что не работает.... коль 0CodErr говорил, что всё работать будет.... ну я и пишу, мол, нет, не всё!... но его почему-то это выводит из себя... что я постоянно пользовался только string(!)... а он всё таки не работает так как надо... а всякие изъё*ы причем каждый раз по разному, меня мало устраивают! И на вопрос: как сделать так (сделать своё), чтобы постоянно не изъё*ться каждый раз по разному, мне ответ: ты лол.. изучай дельфи... попробуй то... попробуй это... за тебя всё сделали и т.д.
0CodErr wrote:
Компьютер, он, понимаешь, штука такая: что ввёл, то и получил, ввёл фигню — получил фигню.

Работал бы string, понимаешь ли... то там:
c:=s2[3]; s1:=s1+c;
(где s1,s2- string, с - char)
сложно представить как тут можно фигню написать, причём так, чтобы ошибку компилятор не выдал! И из-за того, что я привык к такому , это не повод для оскорблений меня!


Top
   
 Post subject: Re: Delphi & PEload
PostPosted: Thu Oct 13, 2016 4:28 pm 
Offline

Joined: Sun Oct 30, 2011 6:43 pm
Posts: 1499
Quote:
И на вопрос: как сделать так (сделать своё), чтобы постоянно не изъё*ться каждый раз по разному, мне ответ: ты лол.. изучай дельфи.
Quote:
Хочется, аналог string чтобы был
Во-первых ты 100% не ходил по приведённым ссылкам и не читал ту информацию, во-вторых, ты всё равно сам это не осилишь, потому что даже азов не знаешь и спотыкаешься на элементарных вещах.
Quote:
0CodErr говорил, что всё работать будет.... ну я и пишу, мол, нет, не всё!
Я вообще-то говорил, что надо править System и SysInit.
Quote:
сложно представить как тут можно фигню написать
Quote:
StrCat(MyStr3, PChar(c))
Что в качестве параметров ожидает StrCat? А ты что вот тут передаёшь?
Quote:
PChar(c)
Quote:
причём так, чтобы ошибку компилятор не выдал!
Да очень просто :) Ты с таким же успехом можешь вывести "A" и удивляться, почему это компилятор не ругается, я же хотел вывести "Б".


Top
   
 Post subject: Re: Delphi & PEload
PostPosted: Thu Oct 13, 2016 4:37 pm 
Offline

Joined: Tue Oct 04, 2016 10:05 pm
Posts: 44
Алекс, я тебе сколько раз в личке объяснял, что строки в язык не встроены? Раз 10, наверно.
Опять по-новой пластинка поехала?


Top
   
 Post subject: Re: Delphi & PEload
PostPosted: Thu Oct 13, 2016 4:40 pm 
Offline

Joined: Tue Oct 04, 2016 10:05 pm
Posts: 44
Quote:
Ох, лол :lol: , а сам ведь при этом городит какой-то KOStoANSI, в то время, как в KolibriOS как раз и используются те самые zero-terminated строки.

Причем я ему это объяснял в личке, блин. Как об стенку.


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 18 posts ]  Go to page 1 2 Next

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Limited