建立一个文本文件,名字叫mys19.rc,加入工程里;
其内容如下:
S19AC16 S19FILE "F:\AC16.s19"
S19AC32 S19FILE "F:\AC32.s19"
S19AC60 S19FILE "F:\AC60.s19"
注意这里的"F:\AC60.s19"等等必须存在 !!!!!!!!!!!
在程序里这样使用:
//---------------------------------------------------------------------------
// Win32 API 方式
//---------------------------------------------------------------------------
bool __fastcall TFormMain::LoadS19File()
{
// 判断MCU类型
AnsiString selection = "S08AC60"; // 资源选择标识
// 从资源中选择文件
HRSRC hRsrcInfo = ::FindResource(NULL, selection.c_str(), "S19FILE");//得到资源信息的句柄
if (NULL == hRsrcInfo)
{
return false; // 失败 资源未找到
}
unsigned long dwSize = ::SizeofResource(NULL, hRsrcInfo);
if (0 == dwSize)
{
return false; // 失败 资源大小错误
}
// 加载资源
HGLOBAL hGlobal = ::LoadResource(NULL, hRsrcInfo);
if (NULL == hGlobal)
{
return false; // 失败 资源读取错误
}
// 锁定资源
void *pBuffer = ::LockResource(hGlobal);
if (NULL == pBuffer)
{
return false; // 失败 资源锁定错误
}
// 释放资源
::FreeResource(hGlobal);
return true;
}
//---------------------------------------------------------------------------