亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? myclassfile.cpp

?? 可以使用硬件指紋作為密鑰加密文件
?? CPP
字號:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop
#include "MyClassFile.h"
#include "math.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
TPascalFun *PascalFun; //引用Delphi函數的類
TForm *MessageForm =new TForm(Application);
//---------------------------------------------------------------------------
AnsiString __fastcall TMyClass::EncryptFile(AnsiString FileName,AnsiString FileExt,AnsiString Password,int ST,int ET,unsigned long BanMove,unsigned long CDVOL)
{
//加密文件
try{
Password=Password+String(BanMove)+String(CDVOL);
int *PWD= new int[Password.Length()];
for(int i=1;i<Password.Length();i++)
{
  PWD[i]=int(Password[i]);
}
int filehandle,ii=2;
unsigned long filelength;
unsigned char * pszBufferA;
filehandle=FileOpen(FileName,fmOpenReadWrite);
filelength=FileSeek(filehandle,0,2);
FileSeek(filehandle,0,0);
pszBufferA=new char [filelength+13];
FileRead(filehandle,pszBufferA,filelength);
FileSeek(filehandle,0,0);
//IamGV是成功解密的標志
pszBufferA[filelength]='H';
pszBufferA[filelength+1]='i';
pszBufferA[filelength+2]='!';
pszBufferA[filelength+3]='G';
pszBufferA[filelength+4]='V';
pszBufferA[filelength+5]=' ';
pszBufferA[filelength+6]='H';
pszBufferA[filelength+7]='i';
pszBufferA[filelength+8]='!';
pszBufferA[filelength+9]='C';
pszBufferA[filelength+10]='O';
pszBufferA[filelength+11]='C';
pszBufferA[filelength+12]='O';
for(int i=0;i<filelength+12;i++)
{
  pszBufferA[i]=pszBufferA[i]-PWD[ii]-PWD[ii-1]+PWD[ii+1]-PWD[ii+2]+PWD[ii+3];
  ii++;
  if(ii+3>=Password.Length())
  ii=2;
}
FileWrite(filehandle,pszBufferA,filelength+13);
FileClose(filehandle);
delete []pszBufferA;

RenameFile(FileName,FileName+FileExt);
//-------------------------往文件尾部寫信息,解密時用作根據
unsigned char * pszBufferB;
filehandle=FileOpen(FileName+FileExt,fmOpenReadWrite);
filelength=FileSeek(filehandle,0,2);
FileSeek(filehandle,0,0);
pszBufferB=new char [filelength+5];
FileRead(filehandle,pszBufferB,filelength);
FileSeek(filehandle,0,0);
pszBufferB[filelength+1]=ST+11;
pszBufferB[filelength+2]=ET+12;
if(BanMove==19851120) //不使用BanMove,BanMove=19851120
pszBufferB[filelength+3]=197;//197為不使用的標志
if(BanMove!=19851120) //使用BanMove,BanMove!=19851120
pszBufferB[filelength+3]=157;//157為使用BanMove的標志

if(CDVOL==19860308) //不使用CDVOL,CDVOL=19860308
pszBufferB[filelength+4]=197;//197為不使用的標志
if(CDVOL!=19860308) //使用CDVOL,CDVOL!=19860308
pszBufferB[filelength+4]=38;//38為使用CDVOL的標志

FileWrite(filehandle,pszBufferB,filelength+5);
FileClose(filehandle);
delete []pszBufferB;
return FileName+FileExt;
}
catch ( ... )
   {  return "";   }
}
//---------------------------------------------------------------------------
bool __fastcall TMyClass::DecryptFile(AnsiString FileName,AnsiString Password,unsigned long BanMove,unsigned long CDVOL,int DelExt)
{
//解密文件
try{
int filehandle;
unsigned long filelength;
unsigned char * pszBuffer;
filehandle=FileOpen(FileName,fmOpenReadWrite);
filelength=FileSeek(filehandle,0,2);
FileSeek(filehandle,0,0);
pszBuffer=new char [filelength-5];
FileRead(filehandle,pszBuffer,filelength-5);
Password=Password+String(BanMove)+String(CDVOL);
int *PWD= new int[Password.Length()];
for(int i=1;i<Password.Length();i++)
{
  PWD[i]=int(Password[i]);
}
int ii=2;

for(int i=0;i<filelength-5;i++)
{
  pszBuffer[i]=pszBuffer[i]+PWD[ii]+PWD[ii-1]-PWD[ii+1]+PWD[ii+2]-PWD[ii+3];
  ii++;
  if(ii+3>=Password.Length())
  ii=2;
}//Hi!GV Hi!COCO是成功解密的標志
if(pszBuffer[filelength-7]=='C'&&pszBuffer[filelength-8]=='O'&&pszBuffer[filelength-9]=='C'&&pszBuffer[filelength-10]=='!'&&pszBuffer[filelength-11]=='i'&&pszBuffer[filelength-12]=='H'&&pszBuffer[filelength-13]==' '&&pszBuffer[filelength-14]=='V'&&pszBuffer[filelength-15]=='G'&&pszBuffer[filelength-16]=='!'&&pszBuffer[filelength-17]=='i'&&pszBuffer[filelength-18]=='H')
{
FileClose(filehandle);
PascalFun->WipeFile(FileName);
_lclose(_lcreat(PascalFun->MypChar(FileName),0));
int filehandleB=FileOpen(FileName,fmOpenReadWrite);
FileSeek(filehandleB,0,0);
FileWrite(filehandleB,pszBuffer,filelength-18);
FileClose(filehandleB);
delete []pszBuffer;
RenameFile(FileName,FileName.SubString(0,FileName.Length()-DelExt));
return true;
}
else
{
FileClose(filehandle);
delete []pszBuffer;
return false; }}
catch ( ... )
   {  return false;   }
 }
//---------------------------------------------------------------------------
char __fastcall TMyClass::FindCD(TDiskInfo *DiskInfo)
{
int CDR=0;
char *Disks[23]={"D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"};
for(int i=0;i<23;i++)
{
   DiskInfo->Disk=*Disks[i];
   if(DiskInfo->DriveType==Diskinfo::dtCDROM)
     CDR++;
}
if(CDR==1)
{
 for(int i=0;i<23;i++)
{
   DiskInfo->Disk=*Disks[i];
   if(DiskInfo->DriveType==Diskinfo::dtCDROM)
     return  *Disks[i];
}
}
if(CDR>1)
{  //取得輸入的盤符
inputagain:  char cddrive=*(InputBox("請輸入密鑰光盤所在光驅的盤符(例如:Z)","","Z").c_str());
  DiskInfo->Disk=cddrive;
  if(DiskInfo->DriveType!=Diskinfo::dtCDROM)//如果不是光驅
   {
      ShowMessage("您輸入的不是光驅的盤符!請重新輸入");
      goto inputagain;
   }
   if(DiskInfo->DriveType==Diskinfo::dtCDROM)//如果是光驅 ,返回
      return  cddrive;
}
}
//---------------------------------------------------------------------------
long __fastcall TMyClass::GetBanMove(TDiskInfo *DiskInfo,AnsiString FileName)
{//用文件的時間屬性來加密,防止文件被復制、修改
 FILETIME *creation=new  FILETIME;
 FILETIME *lastaccess=new  FILETIME;
 FILETIME *lastwrite=new  FILETIME;
 HFILE hfile;
 hfile=_lopen(PascalFun->MypChar(FileName),OF_READ);
 GetFileTime((HANDLE *)hfile,creation,lastaccess,lastwrite);
  _lclose(hfile);
 DiskInfo->Disk=*ExtractFileDrive(FileName).c_str();
 return sqrt(creation->dwLowDateTime-creation->dwHighDateTime+lastwrite->dwLowDateTime-lastwrite->dwHighDateTime+sqrt(abs(DiskInfo->SerialNumber)));
}
//---------------------------------------------------------------------------
void __fastcall TMyClass::ToPackage(TADOTable *ADOTable,AnsiString FileName)
{  //由于文件名最后要經過處理,所以先保存文件流,再保存經過處理的文件名
ADOTable->Append();
   //保存文件流
TFileStream *stream=new TFileStream(FileName,fmOpenRead);
PascalFun->SaveToPackage(ADOTable,stream);//不知為什么,可以用Pascal保存流到數據庫,但c++就不行
stream->Free();
    //保存文件名
FileName=ExtractFileName(FileName);//除去路徑名
ADOTable->FieldByName("FileName")->Value=FileName;
ADOTable->Post();
}
//---------------------------------------------------------------------------
void __fastcall TMyClass::Compress(AnsiString FileName)
{ //壓縮并覆蓋
TMemoryStream  *target=new TMemoryStream;
TFileStream *source=new TFileStream(FileName,fmOpenRead);
LHACompress(source,target);
source->Free();
target->SaveToFile(FileName);
target->Free();
}
//--------------------------------------------------------------------------
void __fastcall TMyClass::Expand(AnsiString FileName)
{
  TMemoryStream     *target=new       TMemoryStream;
  TFileStream *source=new TFileStream(FileName,fmOpenRead);
  LHAExpand(source,target);
  source->Free();
  target->SaveToFile(FileName);
  target->Free();
}
//--------------------------------------------------------------------------
void __fastcall TMyClass::ShowMyMessage(AnsiString Caption,AnsiString str)
{
MessageForm->BorderStyle=bsToolWindow;
MessageForm->Position=poDesktopCenter;
MessageForm->Caption=Caption;
MessageForm->Width=250;
MessageForm->Height=77;
MessageForm->Canvas->Font->Size=10;
MessageForm->Canvas->Brush->Style=bsClear;
MessageForm->Show();
MessageForm->Canvas->TextOutA(MessageForm->Width/7,MessageForm->Height/4,str);
}
//--------------------------------------------------------------------------
void __fastcall TMyClass::CloseMyMessage()
{
    MessageForm->Close();
}
//--------------------------------------------------------------------------
bool __fastcall TMyClass::IsReady(AnsiString FileName)
{
 HFILE hfile;
 hfile=_lopen(FileName.c_str(),OF_WRITE);
 _lclose(hfile);
 if(hfile<0)
 return false;
 if(hfile>=0)
 return true;
}
//--------------------------------------------------------------------------

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区三区免费观看| 一区二区三区四区av| 天天色综合成人网| 欧美日韩电影在线播放| 五月开心婷婷久久| 日韩欧美在线综合网| 久久精品国产免费| 久久久精品国产99久久精品芒果| 国产精品伊人色| 日韩你懂的在线播放| 国产在线播放一区| 日本一区二区三区在线不卡| 97久久精品人人澡人人爽| 亚洲欧美另类在线| 欧美精品自拍偷拍| 精品亚洲成a人在线观看| 欧美激情在线看| 一本色道久久综合精品竹菊| 精品一区二区三区视频| 欧美国产一区视频在线观看| 99精品国产热久久91蜜凸| 亚洲超碰精品一区二区| 久久久久久久电影| 色天天综合久久久久综合片| 爽爽淫人综合网网站| 久久综合九色综合久久久精品综合| 国产v日产∨综合v精品视频| 亚洲精品日韩专区silk| 日韩精品一区二区三区在线| 国产**成人网毛片九色| 亚洲va欧美va天堂v国产综合| 日韩免费视频线观看| 99精品偷自拍| 精品一区二区三区蜜桃| 亚洲男同1069视频| 2024国产精品视频| 欧美午夜电影一区| 成人爽a毛片一区二区免费| 性做久久久久久免费观看欧美| 日韩精品一区二区三区在线播放 | 日韩av一级电影| 国产日韩欧美在线一区| 欧美日韩国产色站一区二区三区| 成人午夜在线免费| 日本成人在线一区| 一区二区三区美女| 国产精品水嫩水嫩| 日韩女同互慰一区二区| 欧美日韩亚洲不卡| 成人avav影音| 经典三级视频一区| 日韩在线a电影| 亚洲靠逼com| 国产欧美一区二区在线| 日韩欧美一二区| 欧美日韩成人综合在线一区二区| 成人国产在线观看| 国产高清亚洲一区| 麻豆精品在线观看| 首页综合国产亚洲丝袜| 一区二区三区 在线观看视频| 国产亚洲精品7777| 精品国产免费人成在线观看| 777欧美精品| 欧美三级中文字幕在线观看| 色狠狠一区二区三区香蕉| 国产福利91精品| 国内精品国产三级国产a久久| 亚洲va欧美va人人爽午夜| 亚洲曰韩产成在线| 亚洲视频在线观看三级| 国产精品久久久久久久久果冻传媒 | 欧洲亚洲精品在线| 99国产精品视频免费观看| 国产成人午夜片在线观看高清观看| 日韩激情一区二区| 午夜电影一区二区| 日本一区中文字幕| 视频一区欧美精品| 美国十次综合导航| 捆绑调教美女网站视频一区| 麻豆精品国产传媒mv男同| 精品一二三四区| 国产九九视频一区二区三区| 国产一区二区三区高清播放| 精品一区二区成人精品| 狠狠色丁香九九婷婷综合五月| 久久成人精品无人区| 国产主播一区二区三区| 亚洲人成人一区二区在线观看| 日韩美女久久久| 亚洲免费成人av| 日日夜夜精品视频免费| 久久国产福利国产秒拍| 国产一区二区不卡老阿姨| 成人一区二区三区视频在线观看| 国产69精品久久99不卡| 99久久婷婷国产| 欧美在线|欧美| 91精品国产91热久久久做人人| 欧美一区二区福利视频| 久久久精品免费免费| 亚洲精选在线视频| 日本最新不卡在线| 久久66热偷产精品| 成人av网站在线观看免费| 在线观看一区二区视频| 日韩视频在线你懂得| 国产亚洲精品福利| 亚洲最新视频在线观看| 日本午夜一本久久久综合| 国产一区二区中文字幕| 97久久超碰国产精品| 3d动漫精品啪啪一区二区竹菊 | 精品理论电影在线观看| 欧美极品xxx| 亚洲大片免费看| 国产一区二区精品久久99| 91在线云播放| 精品伦理精品一区| 国产精品久久精品日日| 天天av天天翘天天综合网 | 蜜桃视频在线一区| 成人国产在线观看| 日韩天堂在线观看| 亚洲人成网站在线| 国产资源在线一区| 777久久久精品| 中文字幕在线播放不卡一区| 日韩1区2区3区| 91精品91久久久中77777| 精品国产a毛片| 亚洲成人久久影院| 99久久伊人久久99| 欧美r级在线观看| 亚洲综合av网| 成人高清免费观看| 精品精品国产高清a毛片牛牛 | 久久免费美女视频| 亚洲国产乱码最新视频| a级高清视频欧美日韩| 精品国产青草久久久久福利| 午夜电影一区二区| 99re热这里只有精品视频| 久久影院视频免费| 奇米在线7777在线精品| 欧美三级资源在线| 亚洲免费av在线| 成人av集中营| 国产亚洲美州欧州综合国| 久久69国产一区二区蜜臀| 欧美放荡的少妇| 亚洲一二三级电影| 欧洲一区在线电影| 亚洲色图清纯唯美| 97se亚洲国产综合自在线不卡| 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 国产精品欧美经典| 国产美女精品一区二区三区| 91精品福利在线一区二区三区 | 午夜影视日本亚洲欧洲精品| jizz一区二区| 国产日韩欧美一区二区三区乱码 | 欧美极品美女视频| 国产福利91精品一区| 国产婷婷一区二区| 国产精品99久久久久久似苏梦涵 | 国产日产欧美一区二区三区| 激情小说欧美图片| 精品国产乱码久久| 久久99精品国产.久久久久| 日韩一级高清毛片| 男女男精品视频| 日韩欧美激情一区| 国产真实乱对白精彩久久| 久久中文娱乐网| 久久99精品网久久| 国产夜色精品一区二区av| 国产成人综合亚洲网站| 国产亚洲女人久久久久毛片| 成人精品免费视频| 亚洲精品中文字幕乱码三区| 99re这里只有精品首页| 一区二区欧美国产| 欧美另类久久久品| 激情小说欧美图片| 国产精品国产三级国产aⅴ原创| 成人免费视频caoporn| 亚洲欧美福利一区二区| 欧美日韩一级二级| 男女性色大片免费观看一区二区| www国产亚洲精品久久麻豆| 国产成人av电影在线| 一区二区三区精品久久久| 91麻豆精品国产| 国产一区二区三区不卡在线观看 | 91精品福利视频| 奇米在线7777在线精品| 国产日韩三级在线| 欧美四级电影网|