Недавно добавленные исходники

•  DeLiKaTeS Tetris (Тетрис)  3 670

•  TDictionary Custom Sort  5 800

•  Fast Watermark Sources  5 603

•  3D Designer  8 218

•  Sik Screen Capture  5 913

•  Patch Maker  6 388

•  Айболит (remote control)  6 378

•  ListBox Drag & Drop  5 237

•  Доска для игры Реверси  94 551

•  Графические эффекты  6 570

•  Рисование по маске  5 644

•  Перетаскивание изображений  4 760

•  Canvas Drawing  5 135

•  Рисование Луны  4 863

•  Поворот изображения  4 411

•  Рисование стержней  3 116

•  Paint on Shape  2 360

•  Генератор кроссвордов  3 228

•  Головоломка Paletto  2 551

•  Теорема Монжа об окружностях  3 328

•  Пазл Numbrix  2 200

•  Заборы и коммивояжеры  2 849

•  Игра HIP  1 820

•  Игра Go (Го)  1 740

•  Симулятор лифта  2 072

•  Программа укладки плитки  1 799

•  Генератор лабиринта  2 241

•  Проверка числового ввода  1 925

•  HEX View  2 226

•  Физический маятник  1 911

 
скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Delphi Sources

Получить все имена ресурсов, что были загружены данным приложением



Оформил: DeeCo

type
   TForm1 = class(TForm)
     Button1: TButton;
     Memo1: TMemo;
     procedure Button1Click(Sender: TObject);
   private
   end;

 var
   Form1: TForm1;

 implementation

 {$R *.dfm}

 function enumResNamesProc(module: HMODULE; restype, resname: PChar;
   list: TStrings): Integer; stdcall;
 begin
   if HiWord(Cardinal(resname)) <> 0 then
     list.Add('  ' + resname)
   else
     list.Add(Format('  #%d', [loword(Cardinal(resname))]));
   Result := 1;
 end;

 Function StockResourceType(restype: PChar): string;
 const
   restypenames: Array [1..22] of String =
     ( 'RT_CURSOR', //       = MakeIntResource(1); 
      'RT_BITMAP', //       = MakeIntResource(2); 
      'RT_ICON',   //       = MakeIntResource(3); 
      'RT_MENU',   //       = MakeIntResource(4); 
      'RT_DIALOG', //       = MakeIntResource(5); 
      'RT_STRING', //       = MakeIntResource(6); 
      'RT_FONTDIR',//       = MakeIntResource(7); 
      'RT_FONT',   //       = MakeIntResource(8); 
      'RT_ACCELERATOR',//   = MakeIntResource(9); 
      'RT_RCDATA', //       = MakeIntResource(10); 
      'RT_MESSAGETABLE',//  = MakeIntResource(11); 
      // DIFFERENCE = 11; 
      'RT_GROUP_CURSOR',// = MakeIntResource(DWORD(RT_CURSOR +7DIFFERENCE)); 
      'UNKNOWN',        // 13 not used 
      'RT_GROUP_ICON',  //   = MakeIntResource(DWORD(RT_ICON +DIFFERENCE)); 
      'UNKNOWN',        // 15 not used 
      'RT_VERSION',     // = MakeIntResource(16); 
      'RT_DLGINCLUDE',  // = MakeIntResource(17); 
      'UNKNOWN',
       'RT_PLUGPLAY',    // = MakeIntResource(19); 
      'RT_VXD',         // = MakeIntResource(20); 
      'RT_ANICURSOR',   // = MakeIntResource(21); 
      'RT_ANIICON'     // = MakeIntResource(22); 
    );
 var
   resid: Cardinal absolute restype;
 begin
   if resid in [1..22] then
     Result := restypenames[resid]
   else
     Result := 'UNKNOWN';
 end;


 function enumResTypesProc(module: HMODULE; restype: PChar; list: TStrings): Integer; stdcall;
 begin
   if HiWord(Cardinal(restype)) <> 0 then
     list.Add(restype)
   else
     list.Add(Format('Stock type %d: %s', [LoWord(Cardinal(restype)),
       StockResourcetype(restype)]));
   EnumResourceNames(module, restype, @enumResNamesProc, Integer(list));
   Result := 1;
 end;

 procedure TForm1.Button1Click(Sender: TObject);
 begin
   memo1.Clear;
   if not EnumResourceTypes(hinstance, @enumResTypesProc, Integer(memo1.Lines)) then
     memo1.Lines.Add(Format('GetLastError= %8.8x', [GetLastError]))
   else
     memo1.Lines.Add('Successful');
 end;

 end.







Copyright © 2004-2025 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

Группа ВКонтакте