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

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

?? eccformmemory.cpp

?? C++實現的橢圓曲線算法。已經寫成一個庫文件只要調用就行了
?? CPP
字號:
/* ==========================================================================

	ecc - Erik's Code Collection
	Copyright (C) 2003-2005 - Erik Dienske

	This file is part of ecc.

	ecc is free software; you can redistribute it and/or modify
	it under the terms of the GNU General Public License as published by
	the Free Software Foundation; either version 2 of the License, or
	(at your option) any later version.

	ecc is distributed in the hope that it will be useful,
	but WITHOUT ANY WARRANTY; without even the implied warranty of
	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
	GNU General Public License for more details.

	You should have received a copy of the GNU General Public License
	along with ecc; if not, write to the Free Software Foundation, Inc.,
	59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

===========================================================================*/

//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop

#include "eccFormMemory.h"
#include "eccPropertyHandler.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
//---------------------------------------------------------------------------
#include "eccError.h"
#include "eccString.h"

//===========================================================================
namespace ecc {
//===========================================================================

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

TFormMemory::TFormMemory(const String ini_fpath, const bool protect)
{
	FProtected	= protect;
	FFilePath 	= ini_fpath;
	FWritePropsError = false;

	if (FProtected)
		ProtectFile(false);  // Unscramble

	if(! DirectoryExists(ExtractFilePath(ini_fpath)) )
		ForceDirectories(ExtractFilePath(ini_fpath));
	FIniFile = new TIniFile(ini_fpath);
}
//---------------------------------------------------------------------------

TFormMemory::~TFormMemory(void)
{
	try
	{
		FIniFile->UpdateFile(); // Flush file to disk.
		delete FIniFile;

		if (FProtected)
			ProtectFile(true);   // Scramble
	}
	catch(...)
	{
		ECC_ERR_MSG("Failed saving data to file\n" + QuoteStr(FFilePath) + ".");
	}
}
//---------------------------------------------------------------------------

TIniFile* TFormMemory::GetIniFile()
{
	return (TIniFile*) FIniFile;
}
//---------------------------------------------------------------------------

void TFormMemory::SetComponent(TComponent* sect_comp)
{
	FSectionComponent = sect_comp;
}
//---------------------------------------------------------------------------

void TFormMemory::WriteProps(String props)
{
	if (FWritePropsError) return;

	TPropertyHandler ph(FSectionComponent);
	TStringList* prop_list = new TStringList();

	try
	{
		prop_list->Text = ph.GetNamesValues(props);
		for (int i = 0; i < prop_list->Count; i++)
		{
			FIniFile->WriteString(
				ph.GetName(),
				prop_list->Names[i],
				prop_list->Values[prop_list->Names[i]]);
		}
	}
	catch(...)
	{
		ECC_ERR_MSG("Writing the settings failed.\n"
			"Further attempts to write to\n"
			+ QuoteStr(FFilePath) + "\nwill be ignored.");
		FWritePropsError = true;
	}
	delete prop_list;
}
//---------------------------------------------------------------------------

void TFormMemory::WriteProps(TComponent* comp, String props)
{
	TPropertyHandler ph(FSectionComponent);
	TStringList* prop_list = new TStringList();

	try
	{
		prop_list->Text = ph.GetNamesValues(comp, props);
		for (int i = 0; i < prop_list->Count; i++)
		{
			FIniFile->WriteString(
				ph.GetName(FSectionComponent),
				ph.GetName(comp) + "." + prop_list->Names[i],
				prop_list->Values[prop_list->Names[i]]);
		}
	}
	__finally
	{
		delete prop_list;
	}
}
//---------------------------------------------------------------------------

void TFormMemory::ReadProps(TComponent* sect_comp)
{
	TPropertyHandler ph(sect_comp);
	TStringList* prop_list = new TStringList();

	try
	{
		FIniFile->ReadSectionValues(ph.GetName(), prop_list);
		ph.SetNamesValues(prop_list->Text);
	}
	__finally
	{
		delete prop_list;
	}
}
//---------------------------------------------------------------------------

void TFormMemory::ProtectFile(bool protect)
//	(Un)Scrambles the ini file.
//	Note that this is a lousy way to scramble the file, it is NOT encrypted.
//	The file becomes just a bit unreadable...
{
	if (!FileExists(FFilePath)) return;

	FileSetAttr(FFilePath, 0);

	try
	{
		// Read file:
		int fh = FileOpen(FFilePath, fmOpenRead);
		int flen = FileSeek(fh,0,2);
		FileSeek(fh,0,0);
		char* buf = new char[flen+1];
		flen = FileRead(fh, buf, flen);
		FileClose(fh);

		// FileWrite() inserts...does not overwrite! So empty file by deleting it:
		DeleteFile(FFilePath);

		if (protect) Scramble(buf, flen);
		else Unscramble(buf, flen);

		// Create file:
		fh = FileCreate(FFilePath);
		FileClose(fh);

		// Write file:
		fh = FileOpen(FFilePath, fmOpenWrite);
		FileSeek(fh,0,0);
		FileWrite(fh, buf, flen);
		FileClose(fh);

		delete[] buf;
	}
	catch(...)
	{
		//"FILE ERROR! "__FUNC__;
	}

	if (protect) FileSetAttr(FFilePath, faHidden | faReadOnly);
}
//---------------------------------------------------------------------------

void TFormMemory::Scramble(char* buf, int flen)
{
	for (int i = 0; i < flen; i++)
	{
		buf[i] = buf[i] ^ 0xff;
		buf[i] = buf[i] ^ i;
	}
}
//---------------------------------------------------------------------------

void TFormMemory::Unscramble(char* buf, int flen)
{
	for (int i = 0; i < flen; i++)
	{
		buf[i] = buf[i] ^ i;
		buf[i] = buf[i] ^ 0xff;
	}
}
//---------------------------------------------------------------------------

//===========================================================================
} // namespace ecc;
//===========================================================================

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美成人性福生活免费看| 亚洲美女区一区| 国产精品国产自产拍高清av王其 | 亚洲高清免费观看| 韩国欧美国产1区| 欧美色中文字幕| 国产精品成人一区二区艾草| 奇米色一区二区| 在线看日韩精品电影| 久久五月婷婷丁香社区| 天堂久久一区二区三区| 日本国产一区二区| 久久久噜噜噜久噜久久综合| 婷婷激情综合网| 91伊人久久大香线蕉| 国产欧美中文在线| 久久成人综合网| 717成人午夜免费福利电影| 亚洲免费观看高清完整 | 美女视频黄a大片欧美| 91福利在线看| 亚洲欧美另类久久久精品| 国产成人精品亚洲日本在线桃色 | 久久久综合视频| 蜜臀久久99精品久久久画质超高清| 91免费版在线| 亚洲欧美激情一区二区| www.欧美亚洲| 日韩一区中文字幕| 成人免费av在线| 国产精品女主播av| 国产成人免费视频网站| 国产精品嫩草影院com| 国产99久久久国产精品| 国产日产亚洲精品系列| 国产很黄免费观看久久| 久久亚洲二区三区| 国产一区二区三区精品欧美日韩一区二区三区 | 色女孩综合影院| 中文字幕综合网| 91精品福利在线| 亚洲精品中文在线观看| 欧美私模裸体表演在线观看| 亚洲高清免费观看| 91精品在线免费| 极品销魂美女一区二区三区| 久久综合九色综合97婷婷女人| 国产乱码精品一品二品| 国产精品入口麻豆九色| 在线观看亚洲一区| 日本午夜精品视频在线观看| 欧美成人aa大片| 国产91在线|亚洲| ●精品国产综合乱码久久久久| 91网上在线视频| 婷婷久久综合九色国产成人 | 国产欧美日韩在线观看| 99久久婷婷国产综合精品| 一区二区三区四区乱视频| 在线91免费看| 国产精品888| 亚洲制服丝袜在线| 精品日韩欧美在线| 91性感美女视频| 热久久一区二区| 国产精品你懂的| 欧美日韩不卡一区| 粗大黑人巨茎大战欧美成人| 一区二区在线观看免费| 精品99999| 在线观看一区二区视频| 亚洲成av人片在www色猫咪| 亚洲制服丝袜av| 欧美mv日韩mv亚洲| 91在线丨porny丨国产| 亚洲一区成人在线| 国产亚洲一区二区三区| 91久久精品午夜一区二区| 激情综合色综合久久综合| 亚洲另类春色校园小说| 久久综合九色欧美综合狠狠| 欧美影视一区在线| 国产99久久久精品| 日本在线播放一区二区三区| 国产人成一区二区三区影院| 欧美日本一道本在线视频| 99精品国产一区二区三区不卡| 亚洲成人精品一区| 亚洲欧洲日韩在线| 久久久.com| 欧美一级理论片| 欧美日韩综合色| 99re这里都是精品| 风间由美一区二区三区在线观看 | 色综合久久综合网欧美综合网| 日日夜夜免费精品| 一区二区三区鲁丝不卡| 国产精品电影一区二区| 久久亚区不卡日本| 精品久久一区二区| 欧美一区二区三区在线电影| 色综合久久久久| av中文一区二区三区| 国产精品小仙女| 精品无人码麻豆乱码1区2区| 日本视频中文字幕一区二区三区| 亚洲一区二区精品久久av| 亚洲毛片av在线| 亚洲精品成人精品456| 中文字幕在线一区| 国产精品传媒在线| 最新不卡av在线| 成人免费小视频| 亚洲欧美综合在线精品| 国产精品女同互慰在线看| 国产精品午夜春色av| 国产精品素人一区二区| 国产精品女上位| 17c精品麻豆一区二区免费| 亚洲欧美日韩在线播放| 亚洲综合成人网| 亚洲成a人v欧美综合天堂下载| 香港成人在线视频| 日本亚洲免费观看| 国模大尺度一区二区三区| 国产一区在线不卡| 成人综合激情网| 99精品视频一区二区三区| 色诱视频网站一区| 欧美日韩免费观看一区二区三区 | 亚洲国产精品一区二区www| 亚洲一级二级三级在线免费观看| 午夜激情一区二区| 看电影不卡的网站| 国产a精品视频| 日本道色综合久久| 日韩午夜av一区| 国产亚洲成aⅴ人片在线观看| 国产精品久久久久久亚洲毛片 | 成人avav在线| 欧美又粗又大又爽| 日韩欧美国产一区二区在线播放 | 17c精品麻豆一区二区免费| 一区二区欧美国产| 美女一区二区视频| 丁香婷婷深情五月亚洲| 欧美亚洲图片小说| 欧美精品一区二区三区在线 | 日韩二区在线观看| 国产精品一卡二卡在线观看| 成人成人成人在线视频| 欧美性生活影院| 日韩精品一区二区三区视频播放| 久久久www成人免费毛片麻豆 | 日韩福利视频网| 粉嫩高潮美女一区二区三区| 欧美色爱综合网| 亚洲国产精品99久久久久久久久| 一区二区国产视频| 国产精品夜夜爽| 欧美群妇大交群中文字幕| 国产亚洲美州欧州综合国| 婷婷六月综合亚洲| 99r国产精品| 久久九九国产精品| 亚洲成人动漫精品| 97精品国产97久久久久久久久久久久| 91精品欧美福利在线观看| 国产精品久久久一本精品| 久久99最新地址| 欧美色图激情小说| 最新久久zyz资源站| 国产在线精品一区二区三区不卡| 欧美在线免费观看亚洲| 欧美国产精品一区| 九九久久精品视频| 欧美日韩一区三区| 亚洲精品ww久久久久久p站| 国产99久久久久| 久久久久久日产精品| 日韩av在线发布| 91福利在线免费观看| 亚洲欧洲精品天堂一级| 国产美女精品在线| 欧美va亚洲va香蕉在线| 日韩综合在线视频| 欧美日韩国产影片| 亚洲动漫第一页| 在线观看91视频| 一级做a爱片久久| 色哟哟亚洲精品| 亚洲猫色日本管| 色婷婷av一区二区三区之一色屋| 欧美激情一区二区三区蜜桃视频 | 久久久久久久久久电影| 六月丁香综合在线视频| 欧美一区二区精品| 蜜臀a∨国产成人精品| 日韩视频一区二区三区在线播放| 午夜精品一区二区三区电影天堂|