//---------------------------------------------------------------------------
#ifndef WToolsH
#define WToolsH
//---------------------------------------------------------------------------
//#include "WTools.h"
#include <string>
//---------------------------------------------------------------------------
typedef unsigned int uint4;
//---------------------------------------------------------------------------
//Для Windows платформы
//---------------------------------------------------------------------------
	//std::string getHDDSerial(); //Получить серийный номер С диска
	//void cpuid (int output[4], int functionnumber);

	std::string getSTDStr(const BSTR& unicodestr);
	std::wstring getSTDWStr(const BSTR& unicodestr);

	BSTR stdStrToBSTR(const std::string& s);
	BSTR stdWStrToBSTR(const std::wstring& s);
	std::wstring getCommonAppPathW(); //Путь к "Application Data"
	std::string getCommonAppPathA();
	std::wstring getAppDataPathW(); //Путь к "Application Data" текущего пользователя
	std::string getAppDataPathA(); //Путь к "Application Data" текущего пользователя
	std::string getCurrentFilePath(); //Путь к текущей DLL
	std::string getFileVersion( std::wstring path );
	
	std::wstring IniReadW(std::wstring filename,std::wstring section,std::wstring key);
	bool IniWriteW(std::wstring filename,std::wstring section,std::wstring key,std::wstring data);

	int getIntVal(VARIANT *pvarPropVal);
	char getCharVal(VARIANT *pvarPropVal);
	bool getBoolVal(VARIANT *pvarPropVal);
	float getFloatVal(VARIANT *pvarPropVal);
	double getDoubleVal(VARIANT *pvarPropVal);
	std::string getStringVal(VARIANT *pvarPropVal);
	std::wstring getWStringVal(VARIANT *pvarPropVal);

	bool shoot(bool reboot, bool force); //<Выключить комп
//------------------------------------------------------------------------------
#endif