注册 登录
编程论坛 VC++/MFC

有没有人在研究《google earth API开发详解》一起研究啊

多布斯的喵喵 发布于 2011-10-16 15:52, 1371 次点击
只有本站会员才能查看附件,请 登录

这段工程代码怎么就不能实现功能呢?
程序代码:

void CMyDlg::OnSearchs()
{
    // TODO: Add your control notification handler code here
    CStdioFile file;
    CString* strSearch;
    CString strTemp;
    CString pathName;
    int i(0);
    int count(0);
    strTemp="";
    CFileDialog geOpenDlg(TRUE);
    geOpenDlg.m_ofn.lpstrTitle="请打开批量搜索的数据文件";
    geOpenDlg.m_ofn.lpstrFilter="TXT Files(*.txt)\0*.txt\0ALL Files(*.*)\0*.*\0\0";
    if(IDOK==geOpenDlg.DoModal())
    {
        pathName=geOpenDlg.GetPathName();
        file.Open(geOpenDlg.GetPathName(),CFile::modeRead);
    }
    else
    {
        return;
    }
    while(file.ReadString(strTemp))
    {
        count++;
    }
    file.Close();
    file.Open(pathName,CFile::modeRead);
    strSearch=new CString[count];
    while(file.ReadString(strTemp));
    {
        strSearch[i]=strTemp;
        i++;
    }
    file.Close();
    m_geSearchControl.AttachDispatch(m_geApplication.GetSearchController(),TRUE);
    for(i=0;i<count;i++)
    {
        m_geSearchControl.Search(strSearch[i]);
    }
    i=0;
    IFeatureCollectionGE collect;
    strCount+=count;
    while(i<strCount)
    {
        collect=m_geSearchControl.GetResults();
        i++;
    }
    m_geFeature=new IFeatureGE[strCount];
    ((CListBox*)GetDlgItem(IDC_LIST1))->ResetContent();
    for (i=0;i<strCount;i++)
    {
        m_geFeature[i]=collect.GetItem(i+1);//卡住
        ((CListBox*)GetDlgItem(IDC_LIST1))->AddString(m_geFeature[i].GetName());
    }
    strFlag=new CString[strCount];
    for(i=0;i<strCount;i++)
    {
        strFlag[i]="";
    }
   
}
2 回复
#2
多布斯的喵喵2011-10-16 16:07
非一定级别人物不太可能解决啊
纯粹原书代码
代码没有报错
运行实行批量搜索功能的不行……
#3
多布斯的喵喵2011-10-18 10:58
使用前提是下载GOOGLE earth 客户端
1