VC++ MFC中 GetFileTitle()这个函数什么意思?

来源:百度知道 编辑:UC知道 时间:2024/06/30 16:30:40
if(strTitle.GetLength()==0)
{
char evap_log_file_name[100];
if(m_evap_his.type_flag == DM_SYS)
{
GetFileTitle ((m_evap_his.dm_log_buffer_file_name),evap_log_file_name,100);
}

GetFileTitle ((m_evap_his.dm_log_buffer_file_name),evap_log_file_name,100);

这个函数各个参数都什么意思? 我自己在MSDN中只找到了两个参数的函数。
三个参数什么意思啊?

第一个参数代表源地址,第二个代表目的地址,第三个代表缓冲字节长度。

很明显你查到的两个参数的函数中的第一个和第二个参数的含义,分别代表你这里面的第一和第三个参数。

只不过两个参数是有返回值的。这里面,直接把返回的内容写到了第二个参数所指向的内存空间。

Windows平台API,函数返回一个串,系统应用此串为用户显示文件名。这就意味着如果返回串应用在文件系统函数的调用中不可能准确地标识文件。
用法说明如下:
函数功能:该函数返回由IpszFile参数标识的文件名。
函数原型:short GetFTitle(LPCTSTR LPTSTR IpszTitle,WORD cbBuf);
参数:
IpszFile:指向一个文件名或文件位置的指针。
IpszTitle:指向一个缓冲区,在此缓冲区中函数复制文件名。
chBuf:指定由IpszTitle函数指向的缓冲的字节长度。
返回值:如果函数调用成功,返回值为零;如果文件名无效,返回值为一负值。如果由IpszTitle参数指向的缓冲区的太小,返回值为一正整数,其值指定了所需缓冲区的大小。所需缓冲区的大小还包括结尾的NULL字符。
备注:如果由IpszFile参数指向的缓冲区包含下列任何一个成员,GetFileTitle函数返回一个错误信息值。
一个空字符串;一个含有星号()、开括号(〔)、闭方括号(〕)的串、一个以冒号(:)、斜杠(/)或倒斜杠结尾的串;一个长度超过缓冲区长度的串;一个无效字符(如,一个空格或一个不能打印的字母):为得到文件名所需的缓冲区的大小,用设置为NULL的IpszTitle和设置为零的cbBuf调用函数。函数将返回所需的大小。
GetFileTitle函数返回一个串,系统应用此串为用户显示文件名。这就意味着如果返回串应用在文件系统函数的调用中不可能准确地标识文件。
如果证IpszTitle缓冲区太小,GetFile Title返回的大小需要含有显示名。在IpszFile缓冲区指定的需要的大小和字符之间没有许可的联系。

short GetFileTitle(