Esempio n. 1
0
/** 装载笔划数据文件
*/
int LoadBHResource()
{
	TCHAR name[MAX_PATH];

	GetFileFullName(TYPE_USERAPP, HZBH_FILE_NAME, name);
	if(LoadBHData(name))
		return 1;

	GetFileFullName(TYPE_ALLAPP, HZBH_FILE_NAME, name);
	return LoadBHData(name);
}
Esempio n. 2
0
/**	装载中文符号INI文件
 */
int LoadSymbolResource()
{
	TCHAR name[MAX_PATH];

	GetFileFullName(TYPE_USERAPP, SYMBOL_INI_FILE_NAME, name);
	if (LoadSymbolData(name))
		return 1;

	GetFileFullName(TYPE_ALLAPP, SYMBOL_INI_FILE_NAME, name);
	return LoadSymbolData(name);
}
Esempio n. 3
0
/**	装载置顶字定义文件
 */
int LoadTopZiResource()
{
	TCHAR name[MAX_PATH];

	if (!(pim_config->hz_option & HZ_USE_FIX_TOP))
		return 0;

	GetFileFullName(TYPE_USERAPP, TOPZI_FILE_NAME, name);
	if (LoadTopZiData(name))
		return 1;

	GetFileFullName(TYPE_ALLAPP, TOPZI_FILE_NAME, name);
	return LoadTopZiData(name);
}
Esempio n. 4
0
HRESULT STDMETHODCALLTYPE KG3DShaderIncludeForRC::Open(D3DXINCLUDE_TYPE IncludeType, LPCSTR pFileName, LPCVOID pParentData, LPCVOID *ppData, UINT *pBytes)
{
	_ASSERTE(NULL == m_hResource);

	DWORD uBypes = 0;

	_ASSERTE(NULL != pFileName && ! s_mapFileName.empty());

	std::string strFileFullName = GetFileFullName(pFileName);
	std::transform(strFileFullName.begin(), strFileFullName.end(), strFileFullName.begin(), tolower);
	TypeFileNameMap::iterator it = s_mapFileName.find(strFileFullName);
	_ASSERTE(it != s_mapFileName.end());
	if (it == s_mapFileName.end())
	{
		return E_FAIL;
	}

	DWORD dwFileRCID = it->second;
	HGLOBAL hglobalTmp = ShaderLibraryLoadShader(dwFileRCID, ppData, &uBypes);	//改成可以对头文件进行搜索
	if(NULL == hglobalTmp)
		return E_FAIL;

	m_hResource = hglobalTmp;
	*pBytes = uBypes; 
	return S_OK;
}
Esempio n. 5
0
BOOL IsStrInTrackFile(CString Str)
{
	char FullName[MAX_PATH+1] = {0};
	FILE *stream = NULL;
	char *pList = NULL;
	UINT fileLen = 0;

	if(GetFileFullName(FullName,WRITE_TOOL_TRACK_FILE))
	{
		if ((stream = fopen(FullName,"r")) == NULL)
		{
			return FALSE;
		}
		
		fseek(stream, 0, SEEK_END);
		fileLen = ftell(stream);
		pList = (char*)malloc(fileLen+1);

		fseek(stream,0,SEEK_SET);
		fread(pList,sizeof(char),fileLen,stream);

		if (strstr(pList,Str))
		{
			free(pList);
			fclose(stream);
			return FALSE;
		}

		free(pList);
		fclose(stream);
	}

	return TRUE;
}
Esempio n. 6
0
/**	写出置顶字文件
 */
void SaveTopZiData()
{
	TCHAR name[MAX_PATH];
	FILE *fw;
	int  i, j;
	HZ   top_zi[MAX_TOPZI + 1];
	TCHAR head_msg[500] = {0xFEFF, 0};

	static TCHAR *topzi_header_msg =
		TEXT("#固顶字定义文件\n")
		TEXT("#格式:\n")
		TEXT("#	拼音=固顶字(组)\n")
		TEXT("#	一行内容可以定义最多8个固顶字,第8个之后的,将被忽略\n")
		TEXT("#如:\n")
		TEXT("#	wo=我\n")
		TEXT("#	d=的地得\n")
		TEXT("#	de=的地得\n\n")
		TEXT("#在输入时,可以直接按 ctrl+shift+数字 来进行任意字的快速固顶。\n")
		TEXT("#最后固顶的排在第一位,其它顺序排列。\n");

	if (!share_segment)
		return;

	_tcscat_s(head_msg, _SizeOf(head_msg), topzi_header_msg);

	//获得用户topzi文件名称
	GetFileFullName(TYPE_USERAPP, TOPZI_FILE_NAME, name);
	if (!SaveToFile(name, head_msg, (int)_tcslen(head_msg) * sizeof(TCHAR)))
		return;

	fw = _tfopen(name, TEXT("ab"));
	if (!fw)
		return;

	//对topzi数组进行排序
	qsort(share_segment->topzi_table, share_segment->topzi_table_items, sizeof(share_segment->topzi_table[0]), CompareTopZiItem);

	for (i = 0; i < share_segment->syllable_map_items; i++)
	{
		SYLLABLE s;
		if (share_segment->syllable_map[i].fuzzy_flag)			//模糊的音不输出
			continue;
		//if (share_segment->syllable_map[i].correct_flag)
		//	continue;
		s.con  = share_segment->syllable_map[i].con;
		s.vow  = share_segment->syllable_map[i].vow;
		s.tone = TONE_0;

		GetTopZi(s, top_zi);
		_ftprintf(fw, TEXT("%s="), share_segment->syllable_map[i].pin_yin);

		for (j = 0; top_zi[j] && j < MAX_TOPZI; j++)
			_ftprintf(fw, TEXT("%c"), top_zi[j]);

		_ftprintf(fw, TEXT("\n"));
	}

	fclose(fw);
}
Esempio n. 7
0
/**	装载font map data文件
 */
int LoadFontMapResource()
{
	TCHAR name[MAX_PATH];

	GetFileFullName(TYPE_USERAPP, FONTMAP_FILE_NAME, name);

	return LoadFontMapData(name);
}
Esempio n. 8
0
/**	装载bigram资源
 */
int LoadBigramResource()
{
	TCHAR name[MAX_PATH];

	GetFileFullName(TYPE_ALLAPP, BIGRAM_FILE_NAME, name);

	return LoadBigramData(name);
}
Esempio n. 9
0
/**	保存词Cache数据
 */
int SaveCiCacheResource()
{
	TCHAR name[MAX_PATH];

	GetFileFullName(TYPE_USERAPP, CICACHE_FILE_NAME, name);

	return SaveCiCacheData(name);
}
Esempio n. 10
0
//装载英文翻译数据文件
int LoadEnglishTransResource()
{
	TCHAR name[MAX_PATH];

	if (!pim_config->use_english_input || !pim_config->use_english_translate)
		return 0;

	GetFileFullName(TYPE_ALLAPP, ENGLISH_TRANS_FILE_NAME, name);

	return LoadEnglishTransData(name);
}
Esempio n. 11
0
/**	装载英文词典文件
 */
int LoadEnglishResource()
{
	TCHAR name[MAX_PATH];

	if (!pim_config->use_english_input)
		return 0;

	GetFileFullName(TYPE_ALLAPP, ENGLISH_LIB_FILE_NAME, name);

	return LoadEnglishData(name);
}
Esempio n. 12
0
BOOL AddToTrackFile(CString Info)
{
	char FullName[MAX_PATH+1] = {0};
	FILE *stream = NULL;
	
	// 修改文件名为日期格式,若存在该文件就追加,若没有就创建
	char realFileName[128] = {0};
	char dbuffer[9] = {0};
	_strdate( dbuffer ); // "12/19/08"
#if 0	
	
	strcpy(realFileName, "20");
	memcpy(&realFileName[2], &dbuffer[6], 2);	// year "08" or "09"
	memcpy(&realFileName[4], &dbuffer[0], 2);	// month "12"
	memcpy(&realFileName[6], &dbuffer[3], 2);	// month "12"
	
	strcat(realFileName, "_");
	strcat(realFileName,WRITE_TOOL_TRACK_FILE);
	
	if(GetFileFullName(FullName,realFileName))
#else
		if(GetFileFullName(FullName,WRITE_TOOL_TRACK_FILE))
#endif
		{
			if ((stream = fopen(FullName,"r+")) == NULL)
			{
				if ((stream = fopen(FullName,"a+")) == NULL)
				{
					return FALSE;
				}
			}
			
			fseek(stream, 0, SEEK_END);
			fprintf(stream, "%s", Info);
			fclose(stream);
		}
		
		return TRUE;
}
Esempio n. 13
0
KG3DShaderIncludeForRC::KG3DShaderIncludeForRC()
:m_hResource(NULL)
{
	if (s_mapFileName.empty())	//初始化全局的哈希表,把所有shader文件名哈希一遍,以便在Open方法中用文件名哈希得到文件
	{
		_ASSERTE(0 != _countof(g_shaderRCArray));	//这个定义在rc文件里面
		for (size_t i = 0; i < _countof(g_shaderRCArray) - 1; ++i)	//最后一个是以NULL结束的空结构
		{
			LPCSTR strFilePath = g_shaderRCArray[i].strFilePath;
			_ASSERTE(NULL != strFilePath);
			std::string strFileFullName = GetFileFullName(strFilePath);
			std::transform(strFileFullName.begin(), strFileFullName.end(), strFileFullName.begin(), tolower);
			TypeFileNameMap::_Pairib ib = s_mapFileName.insert(std::make_pair(strFileFullName, g_shaderRCArray[i].uID));
			_ASSERTE(ib.second && _T("如果插入不成功,表示存在哈希值相同的字符串,请把冲突的文件改名"));
		}
	}
}