Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Отчеты по практике » Розробка програми контролю виробів і підготовка програмної документації

Реферат Розробка програми контролю виробів і підготовка програмної документації





---------

void __ fastcall msg (char * str)// повідомлення для монітора

{

if (! mWrite (m_Disp, (AnsiString (str) + AnsiString (" n r")). C_str (), strlen (str) +2, & Wrtd));

}

void __ fastcall logmsg (AnsiString mes)// повідомлення в полі мемо

{

Form1-> LogText-> Lines-> Add (mes);

}

// --------------------------------------------- ----------------- char __fastcall DeviceOrModule (AnsiString Parameter, int * item_index)// визначити що було передано з початковими параметрами: прилад або модуль і видати порядковий номер потрібного тега.

{

int i, all_nodes;

// шукаємо прилад

all_nodes = SecondLevelNodeAccess-> GetCount ();// кількість тегів другого рівня

for (i = 0; i

if (AnsiString (SecondLevelNodeAccess-> GetNode (i) -> Attributes [WideString ("name")] ) == Parameter) {

* item_index = i;

return 1;

}

}

// якщо прилад не знайдений, шукаємо модуль в тезі default

all_nodes = SecondLevelNodeAccess-> FindNode ("default") -> ChildNodes-> GetCount ();// Кількість тегів третього рівня в тезі default

for (i = 0; i == Parameter) {

* item_index = i;

return 2;

}

}

return 0;

}

// --------------------------------------------- -----------------

void __ fastcall GetModuleList (AnsiString Parameter, PModule * ModuleList, int item_index, int * modules_counter)// отримання списку модулів входять до складу приладу

{

int i, j, k, p, all_modules, version_count;

AnsiString mes;

* modules_counter = ThirdLevelNodeAccess (item_index) -> GetCount ();// кількість модулів у приладі

* ModuleList = new TModule [* modules_counter];// виділяємо пам'ять під масив модулів

for (i = 0; i <* modules_counter; i + +) {// Заповнюємо поля name і baseaddress

if (cor_count)

{

for (j = 0; j

if (AnsiString (ThirdLevelNodeAccess (item_index) -> GetNode (i) -> GetNodeValue ()) == Correction [j]. Name) {

(* ModuleList) [i]. name = Correction [j]. New_name;

break;

}

else (* ModuleList) [i]. name = AnsiString (ThirdLevelNodeAccess (item_index) -> GetNode (i) -> GetNodeValue ());

}

}

else (* ModuleList) [i]. name = AnsiString (ThirdLevelNodeAccess (item_index) -> GetNode (i) -> GetNodeValue ());

(* ModuleList) [i]. baseaddress =

}

// LOG-> Add (AnsiString ());

// активізація dll зі списком модулів

Form1-> XMLDocument1-> FileName = "Module_list.xml";

Form1-> XMLDocument1-> Active = true;

all_modules = SecondLevelNodeAccess-> GetCount ();// скільки всього модулів у базі

for (i = 0; i <* modules_counter; i + +) {

for (j = 0; j <= all_modules; j + +) {//заповнюємо поля version

if (j> = all_modules) {//не знайшли модуль (помилка у файлі з виправленнями)

mes = AnsiString ("Не знайдений модуль ") + (* ModuleList) [i]. Name;

MessageBox (NULL, mes.c_str (), "Помилка", MB_ICONERROR | MB_OK);

break;

}

if ((* ModuleList) [i]. name == AnsiString (ThirdLevelNodeAccess (j) -> GetNode (0) -> GetNodeValue ())) {

(* ModuleList) [i]. version_count = ThirdLevelNodeAccess (j) -> GetCount () - 1;

for (k = 0; k <(* ModuleList) [i]. Version_count; k + +) {

(* ModuleList) [i]. version [k] = new TVersion;

(* ModuleList) [i]. version [k] -> address = StrToInt (FourthLevelNodeAccess (j, k +1) -> GetNode (0) -> NodeValue);

(* ModuleList) [i]. version [k] -> value = StrToInt (FourthLevelNodeAccess (j, k +1) -> GetNode (1) -> NodeValue);

(* ModuleList) [i]. version [k] -> type = StrToInt (FourthLevelNodeAccess (j, k +1) -> GetNode (2) -> NodeValue);

(* ModuleList) [i]. version [k] -> description =

}

break;

}

}

// LOG-> Add (ModuleList [i]. name + AnsiString ("") + ModuleList [i]. Baseaddress);

}

}

// --------------------------------------------- -----------------

void __ fastcall GetModule (AnsiString Parameter, PModule * ModuleList, int item_index)// отримуємо інформацію для одного модуля

{

int i, j, all_modules;

* ModuleList = new (TModule);

(* ModuleList) [0]. name =

(* ModuleList) [0]. baseaddress =

Form1-> XMLDocument1-> FileName = "Module_list.xml";

Form1-> XMLDocument1-> Active = true;

all_modules = SecondLevelNodeAccess-> GetCount ();

for (i = 0; i <= all_modules; i + +) {

if (i> = all_modules) {

MessageBox (NULL, "Модуль не був знайдений. Версія недоступна "," Error ", MB_ICONERROR | MB_OK);

break;

}

if ((* ModuleList) [0]. name == AnsiString (ThirdLevel...


Назад | сторінка 5 з 11 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Гнучкі і виробничі системи складання і монтажу електронних модулів 1-го рів ...
  • Реферат на тему: Розробка оптімізованої програми ОЦІНКИ технічного стану модулів цифрового ф ...
  • Реферат на тему: Розробка апаратно-програмних модулів системної шини ISA
  • Реферат на тему: Розробка програмних модулів програмного забезпечення для комп'ютерних с ...
  • Реферат на тему: Розробка алгоритмічних модулів ПО RTA для оперативного аналізу різних сцена ...