#ifdef TRIAL //--------------------------------------------------------------------------- #include #pragma hdrstop #include "TrialLoginForm.h" #include "Define.h" #include "Notice_F.h" #include "ProtectCard.h" #include "Common.h" #include "Exception.h" #include #include "TrialSerial_F.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma link "RzButton" #pragma link "RzEdit" #pragma link "RzLabel" #pragma link "RzPanel" #pragma resource "*.dfm" TTrialLogin_Form *TrialLogin_Form; //--------------------------------------------------------------------------- __fastcall TTrialLogin_Form::TTrialLogin_Form(TComponent* Owner) : TForm(Owner) { //StateLabel->Caption = "Trial ¹öÀüÀ̸ç ÀÎÅͳÝÀÌ ¿¬°áµÇÁö ¾Ê´Â ÄÄÇ»ÅÍ¿¡¼­´Â »ç¿ëÀÌ ºÒ°¡´ÉÇÕ´Ï´Ù."; StateLabel->Caption = ""; //StateLabel->Font->Height = 4; } //--------------------------------------------------------------------------- void __fastcall TTrialLogin_Form::CreateParams(TCreateParams &Params) { TForm::CreateParams(Params); Params.Style &= ~WS_CAPTION; } //--------------------------------------------------------------------------- void __fastcall TTrialLogin_Form::FormCreate(TObject *Sender) { AnsiString str; int Items; TRegIniFile *RegIniFile = NULL; String Regeditdir; TRegIniFile *RegeditDIR; RegeditDIR = new TRegIniFile(RegFilename); RegeditDIR->RootKey = HKEY_LOCAL_MACHINE; RegeditDIR->OpenKey(RegFilename + "\\",true); // yw Regeditdir = RegeditDIR->ReadString("Directory", "Defaultdir", DefaultDir ); // yw delete RegeditDIR; // RegeditdirÀÌ NULLÀÏ °æ¿ì°¡ À־ ¾Æ·¡¿Í °°ÀÌ ¼öÁ¤ by david 080826 if (Regeditdir.Length()!=0) DefaultDir = Regeditdir; else DefaultDir = GetDefaultDir(); RegIniFile = new TRegIniFile(RegFilename); RegIniFile->RootKey = HKEY_LOCAL_MACHINE; RegIniFile->OpenKey(RegFilename + "\\",true); // yw if (RegIniFile) { str = RegIniFile->ReadString("Directory", "Bin", DefaultDir + "\\Bin"); delete RegIniFile; } else str = DefaultDir + "\\Bin"; #if defined(TEXSTYLIST) str = str + "\\TexStylist"; #endif } //--------------------------------------------------------------------------- void __fastcall TTrialLogin_Form::LoginBtnClick(TObject *Sender) { String r_code; String login_address = L"http://www.texclub.com"; String logout_address = L"http://www.texclub.com/distribute/logout.php "; if (!CheckInet(login_address)) { //MessageDlg("Internet Not connection!", mtWarning, TMsgDlgButtons() << mbOK, 0); StateLabel->Caption = L"»óÅÂ: YoungWoo ȨÆäÀÌÁö¿¡ ¿¬°áÇÒ ¼ö ¾ø½À´Ï´Ù."; return; } login_address = L"http://www.texclub.com/distribute/login.php"; Hashcode = MakeHashcode(); User_ID = IDRzEdit->Text; User_PW = PWRzMaskEdit->Text; r_code = TrialSendMsg(login_address, "1", Hashcode); if (r_code == L"suc") {//¼º°ø ModalResult = mrOk; } else if (r_code == L"mis") {//½ÇÆÐ StateLabel->Caption = L"»óÅÂ: ·Î±×ÀÎ ½ÇÆÐ! ID¿Í Password¸¦ È®ÀÎÇϽñ⠹ٶø´Ï´Ù."; } else if (r_code == L"dup") {//Áߺ¹ StateLabel->Caption = L"»óÅÂ: ÀÌ¹Ì ·Î±×ÀÎÀÌ µÇ¾î ÀÖ½À´Ï´Ù."; if (Application->MessageBox(L"´Ù¸¥ ÄÄÇ»ÅÍÀÇ LoginÀ» °­Á¦ Á¾·á½Ã۰í ÇÁ·Î±×·¥À» ½ÇÇà ÇϽðڽÀ´Ï±î?", L"Information", MB_OKCANCEL) == IDOK) { r_code = TrialSendMsg(logout_address, L"1", L"all"); r_code = TrialSendMsg(login_address, L"1", Hashcode); if (r_code != L"suc") { StateLabel->Caption = L"»óÅÂ: ½ÇÆÐ Çß½À´Ï´Ù. ´Ù½Ã ½ÃµµÇϽʽÿä."; goto fail; } ModalResult = mrOk; } else { goto fail; } } else if (r_code == L"fma") {//À̸ÞÀÏ ÀÎÁõ ½ÇÆÐ StateLabel->Caption = L"»óÅÂ: E-mail ÀÎÁõÀ» ÇÏÁö ¾ÊÀ¸¼Ì½À´Ï´Ù. ȨÆäÀÌÁö¿¡¼­ Á¤º¸ ¼öÁ¤À» ÇϽñ⠹ٶø´Ï´Ù."; } else if (r_code == L"ovr") {//ÀÎÁõ ±â°£ Ãʰú StateLabel->Caption = L"»óÅÂ: ÀÎÁõ ¸¸·á°¡ µÇ¾ú½À´Ï´Ù. »ç¿ëÀÌ ºÒ°¡´ÉÇÕ´Ï´Ù."; } else if (r_code == L"srl") {//½Ã¸®¾ó ÀÔ·Â ÇÏ´Â Æû »ý¼º if (CreateSrlForm()) { ModalResult = mrOk; } else { StateLabel->Caption = L"»óÅÂ: ÄíÆù ÀÎÁõ¿¡ ½ÇÆÐÇß½À´Ï´Ù."; } } else if (r_code == L"ver") {//ÇÁ·Î±×·¥ÀÇ »óÀ§ ¹öÀüÀÌ Á¸ÀçÇÕ´Ï´Ù. Application->MessageBox(L"ÇÁ·Î±×·¥ÀÌ ¹öÀü¾÷ µÇ¾ú½À´Ï´Ù.\nȨÆäÀÌÁö¿¡¼­ »õ·Î¿î ¹öÀüÀ» ´Ù¿î ¹ÞÀ¸¼¼¿ä.", L"Information", MB_OK); ModalResult = mrOk; } else { StateLabel->Caption = L"»óÅÂ: YoungWoo ȨÆäÀÌÁö¿¡ ¿¬°áÇÒ ¼ö ¾ø½À´Ï´Ù."; goto fail; } return; fail: return; } //--------------------------------------------------------------------------- String __fastcall TTrialLogin_Form::MakeHashcode() { randomize(); return "knit" + TrialVersion + "_" + random(1000); } //--------------------------------------------------------------------------- void __fastcall TTrialLogin_Form::IDRzEditClick(TObject *Sender) { //StateLabel->Caption = "Trial ¹öÀüÀ̸ç ÀÎÅͳÝÀÌ ¿¬°áµÇÁö ¾Ê´Â ÄÄÇ»ÅÍ¿¡¼­´Â »ç¿ëÀÌ ºÒ°¡´ÉÇÕ´Ï´Ù."; StateLabel->Caption = ""; } //--------------------------------------------------------------------------- void __fastcall TTrialLogin_Form::PWRzMaskEditClick(TObject *Sender) { //StateLabel->Caption = "Trial ¹öÀüÀ̸ç ÀÎÅͳÝÀÌ ¿¬°áµÇÁö ¾Ê´Â ÄÄÇ»ÅÍ¿¡¼­´Â »ç¿ëÀÌ ºÒ°¡´ÉÇÕ´Ï´Ù."; StateLabel->Caption = ""; } //--------------------------------------------------------------------------- void __fastcall TTrialLogin_Form::PWRzMaskEditKeyPress(TObject *Sender, char &Key) { if (Key == VK_RETURN) LoginBtnClick(this); else if (Key == VK_ESCAPE) { ModalResult = mrCancel; } } //--------------------------------------------------------------------------- String __fastcall TTrialLogin_Form::TrialSendMsg(String add, String type, String hashcode) { String r_code; TIdMultiPartFormDataStream* pData = NULL; TIdHTTP *IdHTTP = new TIdHTTP(this); pData = new TIdMultiPartFormDataStream(); pData->AddFormField( "user_id", User_ID.c_str() ); pData->AddFormField( "user_pass", User_PW.c_str() ); pData->AddFormField( "hashcode", hashcode.c_str()); //hashcode: random code pData->AddFormField( "program", "texstylist"); pData->AddFormField( "version", TrialVersion); pData->AddFormField( "ptype", type.c_str()); //1:login, 2:time check r_code = IdHTTP->Post(add, pData); if (pData != NULL) delete pData; pData = NULL; delete IdHTTP; return r_code; } //--------------------------------------------------------------------------- bool __fastcall TTrialLogin_Form::CreateSrlForm() { Visible = false; TTrialSerialForm *TrialSerialForm = new TTrialSerialForm(this); if (TrialSerialForm->ShowModal() == mrOk) { delete TrialSerialForm; return true; } delete TrialSerialForm; Visible = true; return false; } //--------------------------------------------------------------------------- String __fastcall TTrialLogin_Form::TrialSendSRLMsg(String add, String coupon) { String r_code; TIdMultiPartFormDataStream* pData = NULL; TIdHTTP *IdHTTP = new TIdHTTP(this); pData = new TIdMultiPartFormDataStream(); pData->AddFormField( "user_id", User_ID.c_str() ); pData->AddFormField( "coupon", coupon.c_str()); r_code = IdHTTP->Post(add, pData); if (pData != NULL) delete pData; pData = NULL; delete IdHTTP; return r_code; } //--------------------------------------------------------------------------- void __fastcall TTrialLogin_Form::CancelBtnClick(TObject *Sender) { ModalResult = mrCancel; } //--------------------------------------------------------------------------- #endif