#include <vcl.h>
#include <stdio.h>
#include <conio.h>
#include <ctype.h>
#include <stdlib.h>
#include <io.h>
#pragma hdrstop
#include "Unit1.h"
#include "Unit2.h"
#include "Unit3.h"
#include "Unit4.h"
#include "Unit5.h"
AnsiString GetDir();
void give_road(AnsiString t);
int enter=1;
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{ Form1->Edit1->Text="";
AnsiString t,p;
p=GetDir();
p=p+"БД\\pas.txt";
if(access(p.c_str(),0)==-1){ShowMessage("БД (pas.txt)не найден.Обратитесь к СисАдмину.");enter=0;}
else Form1->Memo1->Lines->LoadFromFile(p);
}
void prepod_see(int n)
{AnsiString t,t2;
AnsiString s='\0',p;
int i;
s=Form1->Memo1->Lines->Strings[n].c_str();
for( i=1;s[i]!='/';i++);
for( i=i+1;s[i]!='/';i++)
{p=p+s[i];}
p=p+' ';
for( i=i+1;s[i]!='/';i++)
{p=p+s[i];}
p=p+' ';
for( i=i+1;s[i]!='/';i++)
{p=p+s[i];}
Form5->Memo1->Lines->Strings[2]=p;
p="";
for( i=i+1;s[i]!='#';i++)
{p=p+s[i];}
t2=t=GetDir();t=t+"БД\\"+p+".txt";
t2=t2+"БД\\s_"+p+".txt";
Form5->Show();
Form5->Button2->Visible=false;
Form5->Button7->Visible=false;
Form5->Button8->Visible=false;
Form5->Memo2->Visible=false;
Form5->Memo3->Visible=false;
Form1->Button1->Visible=false;
if(access(t.c_str(),0)==-1||access(t2.c_str(),0)==-1){ShowMessage("БД не найден.Обратитесь к СисАдмину.");
Form5->Button3->Visible=false;
Form5->Button4->Visible=false;
Form5->Button5->Visible=false;
Form5->Button6->Visible=false;}
else {give_road(t);Form3->Memo1->Lines->LoadFromFile(t);
Form3->Memo2->Lines->LoadFromFile(t2);}
}
//---------------------------------------------------------------------------
void admin_see()
{Form5->Show();Form5->Button5->Visible=false;
Form5->Button4->Visible=false;
Form5->Button3->Visible=false;
Form5->Button6->Visible=false;
Form5->Button7->Visible=false;
Form5->Memo1->Visible=false;
Form5->Memo3->Visible=false;
Form1->Button1->Visible=false;
}
void students_see()
{Form5->Show();
Form5->Button5->Visible=false;
Form5->Button4->Visible=false;
Form5->Button3->Visible=false;
Form5->Button6->Visible=false;
Form5->Button2->Visible=false;
Form5->Button8->Visible=false;
Form1->Button1->Visible=false;
Form5->Memo1->Visible=false;
Form5->Memo2->Visible=false;
}
AnsiString GetDir()//Возвращеет путь где был вызван послетний файл.
{AnsiString dir;
int s;
s=ParamStr(0).LastDelimiter("\\");
dir=ParamStr(0).SetLength(s);
return (dir);
}
int pasvord()//возвращает 0 если пароль не верный, иначе номер страки (в pas) где есть верный.
{AnsiString s='\0',p,pas;
s=Form1->Memo1->Lines->Strings[2].c_str();
pas=Form1->Edit1->Text.c_str();
for(int i=2;s[1]!='@';i++)
{p="";
for(int j=1;s[j]!='/';j++)
{p=p+s[j];}
if(p==pas)return i;
s=Form1->Memo1->Lines->Strings[i+1].c_str();
}
return (0);
}
void __fastcall TForm1::Button1Click(TObject *Sender)
{int str=-1;
AnsiString p;
if(enter==1){
if(Form1->Edit1->Text=="")ShowMessage("Введите пароль");
else{if(Form1->Memo1->Lines->Strings[1]==Form1->Edit1->Text.c_str()){admin_see();}
else{str=pasvord();if(str!=0){prepod_see(str);}
else{if(Form1->Memo1->Lines->Strings[0]==Form1->Edit1->Text.c_str())
{students_see();}
else ShowMessage("Пароль не верный. Обратитесь к администратору.");
}
}
}
} else {ShowMessage("БД не найден.Обратитесь к СисАдмину.");}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{Form1->Close();
}
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit2.h"
#include "Unit5.h"
#include "Unit1.h"
#include "Unit3.h"
AnsiString GetDir();
void see_predmet();
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm2 *Form2;
//---------------------------------------------------------------------------
__fastcall TForm2::TForm2(TComponent* Owner)
: TForm(Owner)
{ }
void not_see2(bool t)
{Form2->Label6->Visible=t;
Form2->Label7->Visible=t;
Form2->Label9->Visible=t;
Form2->Button1->Visible=t;
Form2->Button2->Visible=t;
Form2->Button3->Visible=t;
Form2->Button4->Visible=t;
Form2->Edit6->Visible=t;
Form2->Edit7->Visible=t;
Form2->ListBox1->Enabled=t;
Form2->Edit1->Text="";
Form2->Edit2->Text="";
Form2->Edit3->Text="";
Form2->Edit4->Text="";
Form2->Edit4->Enabled=t-1;
Form2->Edit5->Text="";
}
void see_data_admin()//показывет данные о преподах, и всех паролях
{Form2->Edit6->Text=Form1->Memo1->Lines->Strings[0];
Form2->Edit7->Text=Form1->Memo1->Lines->Strings[1];
see_predmet();
}
void see_predmet()//Выводит на Form2->ListBox1 названия всех предметов(тестах)
{int i,j,k,z;
AnsiString s,p;
Form2->ListBox1->Items->Add("");
Form2->ListBox1->Items->Add("");
s=Form1->Memo1->Lines->Strings[2].c_str();
for(i=2;s[1]!='@';i++)
{ for(j=1;s[j]!='#';j++);
j--;p="";
for(k=j;s[k]!='/';k--);
for(z=k+1;s[z]!='#';z++)
{p=p+s[z];}
Form2->ListBox1->Items->Add("");
Form2->ListBox1->Items->Strings[i]=p;
s=Form1->Memo1->Lines->Strings[i+1].c_str();
}
}
void Show_data_for_prepod(int n)
{int i1,i2,i3,i4,i5;
AnsiString s,p="";
s=Form1->Memo1->Lines->Strings[n].c_str();
for(i1=1;s[i1]!='/';i1++)
{p=p+s[i1];}
Form2->Edit5->Text=p;p="";
for(i2=i1+1;s[i2]!='/';i2++)
{p=p+s[i2];}
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.