• 将EXE作为资源,然后在释放到磁盘上并运行该exe程序(使用了FindResource,LoadResource,然后用CFile写成一个文件)


    [cpp] view plain copy
     
    1. // 将exe作为资源加入,然后再释放出来,并运行  
    2. try  
    3.     {  
    4.         HRSRC hRes = FindResource(NULL, MAKEINTRESOURCE(IDR_EXE1), _T("EXE"));  
    5.         if(NULL == hRes)   
    6.             return ;   
    7.           
    8.         DWORD dwSize = SizeofResource(NULL, hRes);   
    9.         if(0 == dwSize)   
    10.             return ;   
    11.           
    12.         HGLOBAL hGlobal = LoadResource(NULL, hRes);   
    13.         if(NULL == hGlobal)   
    14.             return ;   
    15.           
    16.         LPVOID lp = LockResource(hGlobal);   
    17.         if(NULL == lp)   
    18.             return ;   
    19.   
    20.         CFile file;  
    21.         TCHAR szApp[MAX_PATH] = {_T("F://11.exe")};  
    22.         file.Open(szApp, CFile::modeCreate | CFile::modeWrite);  
    23.         file.WriteHuge(lp, dwSize);  
    24.         file.Close();  
    25.   
    26.         FreeResource (hGlobal);  
    27.   
    28.         if(PathFileExists(szApp))  
    29.         {  
    30.             STARTUPINFO si = {sizeof(si)};  
    31.             PROCESS_INFORMATION pi = {0};  
    32.             if(CreateProcess(NULL, szApp, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi))  
    33.             {  
    34.                 CloseHandle(pi.hThread);  
    35.                 CloseHandle(pi.hProcess);  
    36.             }  
    37.         }  
    38.     }  
    39.     catch (CException* e)  
    40.     {  
    41.         e->ReportError();  
    42.         e->Delete();  
    43.     }  

    http://blog.csdn.net/visualeleven/article/details/6035381 

     
     
  • 相关阅读:
    算法复习:字符串
    【第五天打卡。
    【第四天打卡。
    【第三天打卡。
    第二天打卡。
    【唉
    配环境到崩溃系列
    所谓环境……
    【随便吐槽
    第四天。打卡。【偷懒了两天hhhh
  • 原文地址:https://www.cnblogs.com/findumars/p/6002468.html
Copyright © 2020-2023  润新知