goto用法

来源:互联网 发布:.top新网域名有哪些 编辑:程序博客网 时间:2024/05/29 11:04

HANDLE hSourceHandle;
 DWORD pid[100];
 DWORD size = 0;
 EnumProcesses(pid,sizeof(pid),&size);
 size = size/sizeof(DWORD);
 printf("process num is %d/n",size);
 for (int i = 0;i<size;i++)
 {
  hSourceHandle = OpenProcess(PROCESS_ALL_ACCESS,FALSE,pid[i]);
  if (hSourceHandle)
  {
   HMODULE hMod[100];
   DWORD dwModSize = 0;
   BOOL bRet = EnumProcessModules(hSourceHandle,hMod,sizeof(hMod),&dwModSize);
   if (bRet)
   {
    dwModSize = dwModSize/sizeof(HMODULE);
    char szName[100];
    for (int i = 0;i<dwModSize;i++)
    {
     DWORD dwRet = GetModuleBaseName(hSourceHandle,hMod[i],szName,sizeof(szName));
     if (dwRet)
     {
      printf("Mod %d Name is %s . /n",i,szName);
      if (strcmp(szName,"asmtest.exe") == 0)
      {
       goto FindProcessOK;
      }
     }
    }
    printf("...............One Process End .............../n");
   }

  }
 }
FindProcessOK:

 

上面的一段程序是遍历寻找exe用goto语句非常适合

原创粉丝点击