Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Delphi (все версии) - часть 4

Модерирует : ShIvADeSt

ShIvADeSt (28-06-2009 02:10): Продолжение в http://forum.ru-board.com/topic.cgi?forum=33&topic=10477  Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

   

megamozg13



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

library arrays;
uses ShareMem,Windows,Messages,SysUtils,Controls,ShellApi,Classes;
var
 ar_kolvo: Integer;
 ar_indx: array[1..500] of PChar;
 ar_data: array[1..500] of PChar;
 
//\\ ОЧИСТКА МАССИВОВ /\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\
procedure ArrayClear(Wnd: HWnd; var_index,var_data: PChar); stdcall;
  var
    i: Integer;
  begin
    for i:=0 to ar_kolvo do begin ar_indx[i]:=nil; ar_data[i]:=nil; end;
    ar_kolvo:=0;
  end;
exports ArrayClear;
 
//\\ СОХРАНЕНИЕ /\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\
procedure ArraySet(Wnd: HWnd; var_index,var_data: PChar); stdcall;
  var
    ar_tek, i: Integer;
  begin
    // попытка найти номер по порядку
    ar_tek:=0;
    if ar_kolvo>0 then
      for i:=0 to ar_kolvo do
        if StrComp(ar_indx[i],var_index)=0 then ar_tek:=i;
 
    // выделение памяти и наращивание счетчика кол-ва элементов
    if ar_tek=0 then
      begin
        ar_kolvo:=ar_kolvo+1; ar_tek:=ar_kolvo;
        GetMem(ar_indx[ar_tek],Length(var_index)+1);
        GetMem(ar_data[ar_tek],Length(var_data)+1);
      end;
    // сохранение
    StrCopy(ar_indx[ar_tek], var_index);
    StrCopy(ar_data[ar_tek], var_data);
  end;
exports ArraySet;
 
//\\ СЧИТЫВАНИЕ /\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\
procedure ArrayGet(Wnd: HWnd; var_index,var_data: PChar); stdcall;
  var
    ar_tek, i: Integer;
  begin
    // попытка найти номер по порядку
    ar_tek:=0;
    if ar_kolvo>0 then
      for i:=0 to ar_kolvo do
        if StrComp(ar_indx[i],var_index)=0 then ar_tek:=i;
    // считывание
    if ar_tek<>0 then
      begin
        GetMem(var_data,Length(ar_data[ar_tek])+1);
        StrCopy(var_data,ar_data[ar_tek]);
      end;
  end;
exports ArrayGet;
 
//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\
begin
end.

Всего записей: 313 | Зарегистр. 27-07-2004 | Отправлено: 14:23 22-04-2008 | Исправлено: megamozg13, 14:26 22-04-2008
   

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Delphi (все версии) - часть 4
ShIvADeSt (28-06-2009 02:10): Продолжение в http://forum.ru-board.com/topic.cgi?forum=33&topic=10477


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru