unit1.cpp
来自「使用的是BCB5开发的一个简单的3DES的DEMO」· C++ 代码 · 共 89 行
CPP
89 行
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
#include "Des.h"
#include "Unit2.h"
#include "Unit3.h"
#include <windef.h>
#include <windows.h>
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
AnsiString fileName;
extern bool firstTime;
char * FileIn;
char * FileOut;
EncryptThread* ethread;
dethread* dthread;
HANDLE completeEvent;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
FileIn = (char *)malloc(MAX_PATH);
FileOut = (char *)malloc(MAX_PATH);
completeEvent = CreateEvent(NULL,0,0,NULL);
}
//---------------------------------------------------------------------------
__fastcall TForm1::~TForm1()
{
ethread->WaitFor();
ethread->Terminate();
dthread->WaitFor();
dthread->Terminate();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::btnOpenInputFileClick(TObject *Sender)
{
if(OpenDlg->Execute())
fileName = OpenDlg->FileName;
eInputFile->Text = fileName;
FileIn = fileName.c_str();
firstTime = true;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::btnEncryptClick(TObject *Sender)
{
if (eInputFile->Text.IsEmpty())
ShowMessage("Please choose a File to encrypt!");
else
{
ethread = new EncryptThread(true);
ethread->Resume();
WaitForSingleObject(completeEvent,INFINITE);
ShowMessage("Encryption Complete!");
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::btnDecryptClick(TObject *Sender)
{
if (eDecryptedFile->Text.IsEmpty())
ShowMessage("Please choose a File to decrypt!");
else
{
dthread = new dethread(true);
dthread->Resume();
WaitForSingleObject(completeEvent,INFINITE);
ShowMessage("Decryption Complete!");
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::btnOpenDecryptFileClick(TObject *Sender)
{
if(OpenDlg->Execute())
{
fileName = OpenDlg->FileName;
eDecryptedFile->Text = fileName;
FileOut = fileName.c_str();
}
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?