CDocTemplate::MatchDocType

virtual Confidence MatchDocType(LPCTSTR lpszPathName, CDocument& rpDocMatch );
virtual Confidence MatchDocType(LPCTSTR lpszPathName, DWORD dwFileType, CDocument& rpDocMatch );

返回值:
Confidence枚举的值,如下:
enum Confidence
{
  noAttempt,
  maybeAttemptForeign,
  yesAttemptNative,
  yesAttemptNative,
  yesAlreadyOpen
};

参数:
lpszPathName文件路径名字。
rpDocMatch如果lpszPathName指定的文件已经打开,则为用于匹配文档模板的文档的指针。
dwFileType文档类型。

说明:
使用该函数来定义用于打开文件的文档模板类型。如果应用支持多种文件类型,可使用该函数来确定文件适当的模板。文件由依次对每个模板调用MatchDocType来指定,并根据返回的Confidence值来选择模板。如果lpszPathName指定的文件已经打开,函数返回CDocTemplate::yesAlready-Open ,并将文件的CDocument对象拷贝到rpDocMatch。
如果文件未被打开,但其扩展名与CDocTemplate::filterExt指定的扩展名匹配(或与Macintosh文件类型匹配)。函数返回CDocTemplate::yesAttemptNative,并设置rpDocMatch为NULL。要了解CDocTemplate::filterExt的更多信息,请参阅CDocTemplate::GetDocString。
如果不是以上两种情况之一,函数返回CDocTemplate::yesAttempForeign。
缺省实现方式是不返回CDocTemplate::maybeAttemptForeign或CDocTemplate::maybeAttemptNative。可覆盖该函数去实现适合你的应用的类型匹配,有可能用到Confidence枚举的两个值。

请参阅:CDocTemplate::GetDocString