Вниз
Скачать: CL | DM;

rc файлы   Найти похожие ветки 

 
sergeyst ©   (2007-02-27 12:28) [0]

Привет!
Хочу написать библиотеку для CAD системы. Смотрю примеры и не могу разобраться с синтаксисом rc файлов. F1 ответа не дает. Привожу отрывки кода:
библиотека:
// головная функция библиотеки
//---
procedure  LIBRARYENTRY( comm : Word  );  pascal;
begin
 if ( ksGetCurrentDocument( 1 ) <> 0 ) then
   case comm of
     1: Intersect2Line;        //&#239;&#229;&#240;&#229;&#241;&#229;&#247;&#252; &#239;&#240;&#255;&#236;&#251;&#229;
     2: Intersect2Curve;       //&#239;&#229;&#240;&#229;&#241;&#229;&#247;&#252; &#234;&#240;&#232;&#226;&#251;&#229;
     3: IntersectLineSegArc;   //&#239;&#229;&#240;&#229;&#241;&#229;&#247;&#252; &#238;&#242;&#240;&#229;&#231;&#238;&#234; &#232; &#228;&#243;&#227;&#243;
     4: TanLinePointAndCircle; //&#234;&#224;&#241;&#224;&#242;&#229;&#235;&#252;&#237;&#224;&#255; &#232;&#231; &#242;&#238;&#247;&#234;&#232;
     5: TanLineCircle;         //&#234;&#224;&#241;&#224;&#242;&#229;&#235;&#252;&#237;&#224;&#255; &#239;&#238;&#228; &#243;&#227;&#235;&#238;&#236;
     6: RotatePoint;           //&#239;&#238;&#226;&#238;&#240;&#238;&#242; &#242;&#238;&#247;&#234;&#232;
     7: SymmetryPoint;         //&#241;&#232;&#236;&#236;&#229;&#242;&#240;&#232;&#255; &#242;&#238;&#247;&#234;&#232;
     8: Couplin2Lines;         //&#241;&#238;&#239;&#240;&#255;&#227;&#224;&#254;&#249;&#232;&#229; &#238;&#234;&#240;&#243;&#230;&#237;&#238;&#241;&#242;&#232; &#234; &#228;&#226;&#243;&#236; &#239;&#240;&#255;&#236;&#251;&#236;
     9: BuildPerpendicular;    //&#239;&#229;&#240;&#229;&#239;&#229;&#237;&#228;&#232;&#234;&#243;&#235;&#255;&# 240;
   end {case}
 else
   ksMessage( "&#196;&#238;&#234;&#243;&#236;&#229;&#237;&#242; &#237;&#229; &#224;&#234;&#242;&#232;&#226;&#232;&#231;&#232;&#240;&#238;&#226;&#224;&#237; &#232;&#235;&#232;" +#13#10+ "&#237;&#229; &#255;&#226;&#235;&#255;&#229;&#242;&#241;&#255; &#235;&#232;&#241;&#242;&#238;&#236;/&#244;&#240;&#224;&#227;&#236;&#229;&#237;&#242;&#238;&#236;" );

end;

rc файл:
#ifndef __STEP2_RH
#include "step2.rh"
#endif

/////////////////////////////////////////////////////////////////////////////
// меню
//
IDR_LIBID MENU DISCARDABLE //
BEGIN
 MENUITEM "&#207;&#229;&#240;&#229;&#241;&#229;&#247;&#252; &#239;&#240;&#255;&#236;&#251;&#229;",                      1
 MENUITEM "&#207;&#229;&#240;&#229;&#241;&#229;&#247;&#252; &#234;&#240;&#232;&#226;&#251;&#229;",                      2
 MENUITEM "&#207;&#229;&#240;&#229;&#241;&#229;&#247;&#252; &#238;&#242;&#240;&#229;&#231;&#238;&#234; &#232; &#228;&#243;&#227;&#243;",              3
 MENUITEM "&#202;&#224;&#241;&#224;&#242;&#229;&#235;&#252;&#237;&#224;&#255;  &#232;&#231; &#242;&#238;&#247;&#234;&#232;",                4
 MENUITEM "&#202;&#224;&#241;&#224;&#242;&#229;&#235;&#252;&#237;&#224;&#255;  &#239;&#238;&#228; &#243;&#227;&#235;&#238;&#236;",               5
 MENUITEM "&#207;&#238;&#226;&#238;&#240;&#238;&#242; &#242;&#238;&#247;&#234;&#232;",                        6
 MENUITEM "&#209;&#232;&#236;&#236;&#229;&#242;&#240;&#232;&#255; &#242;&#238;&#247;&#234;&#232;",                      7
 MENUITEM "&#209;&#238;&#239;&#240;&#255;&#227;&#224;&#254;&#249;&#232;&#229; &#238;&#234;&#240;&#243;&#230;&#237;&#238;&#241;&#242;&#232; &#234; &#228;&#226;&#243;&#236; &#239;&#240;&#255;&#236;&#251;&#236;", 8
 MENUITEM "&#207;&#229;&#240;&#229;&#239;&#229;&#237;&#228;&#232;&#234;&#243;&#235;&#255;& #240; &#234; &#238;&#242;&#240;&#229;&#231;&#234;&#243;",             9
END

/////////////////////////////////////////////////////////////////////////////
// &#209;&#242;&#240;&#238;&#234;&#232;
//
STRINGTABLE DISCARDABLE
BEGIN
 IDR_LIBID  "&#204;&#224;&#242;&#229;&#236;&#224;&#242;&#232;&#234;&#224;"  // &#200;&#236;&#255; &#225;&#232;&#225;&#235;&#232;&#238;&#242;&#229;&#234;&#232;
END

/////////////////////////////////////////////////////////////////////////////
// &#200;&#237;&#241;&#242;&#240;&#243;&#236;&#229;&#237;&#242;&#224;&#235;&#252;&# 237;&#251;&#229; &#239;&#224;&#237;&#229;&#235;&#232;
//

// &#206;&#239;&#240;&#229;&#228;&#229;&#235;&#229;&#237;&#232;&#229; &#232;&#236;&#229;&#237;&#232; &#239;&#224;&#237;&#229;&#235;&#229;&#233;
STRINGTABLE
{
 COMPACT_BAR1 "&#202;&#238;&#236;&#239;&#224;&#234;&#242;&#237;&#224;&#255; &#239;&#224;&#237;&#229;&#235;&#252; &#204;&#224;&#242;&#229;&#236;&#224;&#242;&#232;&#234;&#224;"
 BAR_1        "&#200;&#237;&#241;&#242;&#240;&#243;&#236;&#229;&#237;&#242;&#224;&#235;&#252;& #237;&#224;&#255; &#239;&#224;&#237;&#229;&#235;&#252; 1"
}

// &#206;&#239;&#240;&#229;&#228;&#229;&#235;&#229;&#237;&#232;&#229; &#241;&#238;&#241;&#242;&#224;&#226;&#224;
COMPACT_BAR1 RCDATA
{
 BAR_1        // &#200;&#237;&#241;&#242;&#240;&#243;&#236;&#229;&#237;&#242;&#224;&#235;&#252;&# 237;&#224;&#255; &#239;&#224;&#237;&#229;&#235;&#252;, &#226;&#245;&#238;&#228;&#255;&#249;&#224;&#255; &#226; &#234;&#238;&#236;&#239;&#224;&#234;&#242;&#237;&#243;&#254;
 END_OF_RESOURCE_TABLE
}

// &#206;&#239;&#240;&#229;&#228;&#229;&#235;&#229;&#237;&#232;&#229; &#241;&#238;&#241;&#242;&#224;&#226;&#224; &#239;&#224;&#237;&#229;&#235;&#232;
BAR_1 RCDATA
{
 1 // &#207;&#229;&#240;&#229;&#241;&#229;&#247;&#252; &#239;&#240;&#255;&#236;&#251;&#229;
 2 // &#207;&#229;&#240;&#229;&#241;&#229;&#247;&#252; &#234;&#240;&#232;&#226;&#251;&#229;
3 // &#207;&#229;&#240;&#229;&#241;&#229;&#247;&#252; &#238;&#242;&#240;&#229;&#231;&#238;&#234; &#232; &#228;&#243;&#227;&#243;
4 // &#202;&#224;&#241;&#224;&#242;&#229;&#235;&#252;&#237;&#224;&#255; &#232;&#231; &#242;&#238;&#247;&#234;&#232;
5 // &#202;&#224;&#241;&#224;&#242;&#229;&#235;&#252;&#237;&#224;&#255; &#239;&#238;&#228; &#243;&#227;&#235;&#238;&#236;
6 // &#207;&#238;&#226;&#238;&#240;&#238;&#242; &#242;&#238;&#247;&#234;&#232;
7 // &#209;&#232;&#236;&#236;&#229;&#242;&#240;&#232;&#255; &#242;&#238;&#247;&#234;&#232;
8 // &#209;&#238;&#239;&#240;&#255;&#227;&#224;&#254;&#249;&#232;&#229; &#238;&#234;&#240;&#243;&#230;&#237;&#238;&#241;&#242;&#232; &#234; &#228;&#226;&#243;&#236; &#239;&#240;&#255;&#236;&#251;&#236;
9 // &#207;&#229;&#240;&#229;&#239;&#229;&#237;&#228;&#232;&#234;&#243;&#235;&#255;&# 240;
END_OF_RESOURCE_TABLE
}

BAR_1 ICON DISCARDABLE "bar1.ico"

// это я знаю что такое
1001 BITMAP "1.bmp"
1002 BITMAP "2.bmp"
1003 BITMAP "3.bmp"
1004 BITMAP "4.bmp"
1005 BITMAP "5.bmp"
1006 BITMAP "6.bmp"
1007 BITMAP "7.bmp"
1008 BITMAP "8.bmp"
1009 BITMAP "9.bmp"

Объясните, что обозначают всякие DISCARDABLE, STRINGTABLE, RCDATA и как они(ресурсы) попадают в нужное место(как их вызывают)?


 
Desdechado ©   (2007-02-27 12:35) [1]

STRINGTABLE - это просто список строк
RCDATA - это двоичные данные без типа


 
Fredy314 ©   (2007-02-27 12:45) [2]

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


 
sergeyst ©   (2007-02-27 13:12) [3]


> #ifndef __STEP2_RH
> #include "step2.rh"
> #endif

А это что такое а-ля С?

Вызывающая прога должна как-нибудь запрашивать идентификаторы ресурсов?


 
Desdechado ©   (2007-02-27 13:26) [4]

Все ресурсы достаются по типу+имя/номер.

> А это что такое а-ля С?
А это для компилятора ресурсов заголовочные файлы, необходимые для компиляции.


 
Юрий Зотов ©   (2007-02-27 13:33) [5]

http://msdn2.microsoft.com/en-us/library/aa381042.aspx



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.043 c
5-1150058152
KIvan
2006-06-12 00:35
2007.03.18
Картинки в заголовках колонок TListView


2-1172490256
Oleg_teacher
2007-02-26 14:44
2007.03.18
Меню другого цвета


2-1172401860
Novichok_New
2007-02-25 14:11
2007.03.18
Ошибки в коде


1-1169717444
Альф
2007-01-25 12:30
2007.03.18
Обработка исключений в TThread


2-1172328420
yaJohn
2007-02-24 17:47
2007.03.18
StrToDateTime -> EConvertError




   Наверх