DWORD GetProcessIdByName( LPCTSTR lpFilename) { DWORD dwCount = 0; HANDLE hProcessSnap; PROCESSENTRY32 pe32; pe32.dwSize=sizeof(PROCESSENTRY32); hProcessSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0); CString proName=lpFilename; proName.MakeUpper(); if(hProcessSnap == INVALID_HANDLE_VALUE) return 0; if(!Process32First(hProcessSnap,&pe32)) { CloseHandle(hProcessSnap); return 0; } do { _tcsupr_s(pe32.szExeFile); //查找szExeFile 中第一次出现proName的位置。作用=包含。 if(_tcsstr(pe32.szExeFile,proName)) { dwCount=pe32.th32ProcessID; break; } } while(Process32Next(hProcessSnap,&pe32)); CloseHandle(hProcessSnap); return dwCount; }
STDMETHODIMP HttpRequest::put_Method(BSTR newVal) { ATLASSERT(newVal); ZeroMemory(m_szMethod,sizeof(m_szMethod)); _tcsncpy_s(m_szMethod,newVal,STRLEN_SMALL); _tcsupr_s(m_szMethod); return S_OK; }
DWORD CAppreciation::GetProcessIDForProcessName(LPCTSTR lpProcessName) { HANDLE hProcess=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0); HANDLE hModule; PROCESSENTRY32* pinfo=new PROCESSENTRY32; MODULEENTRY32* minfo=new MODULEENTRY32; pinfo->dwSize=sizeof(PROCESSENTRY32); minfo->dwSize=sizeof(MODULEENTRY32); BOOL report; TCHAR szName[MAX_PATH] = {0}; _tcscpy_s(szName,lpProcessName); _tcsupr_s(szName); // printf("ShowProcessPath with [ToolHelp API]\n\n"); report=Process32First(hProcess,pinfo); while(report) { hModule=CreateToolhelp32Snapshot(TH32CS_SNAPMODULE,pinfo->th32ProcessID); //Module32First(hModule, minfo); _tcsupr_s(pinfo->szExeFile); if (NULL != _tcsstr(pinfo->szExeFile,szName)) return pinfo->th32ProcessID; report=Process32Next(hProcess, pinfo); } CloseHandle(hProcess); CloseHandle(hModule); delete minfo; delete pinfo; return 0; }
void __fastcall Prepare(KN_FP_MASK* mask, bool bEnable) { mask->szMaskUpper = NULL; if (mask->hIcolibItem) IcoLib_RemoveIcon(mask->szIconName); mask->hIcolibItem = NULL; if (!mask->szMask || !bEnable) return; size_t iMaskLen = mir_tstrlen(mask->szMask) + 1; LPTSTR pszNewMask = (LPTSTR)HeapAlloc(hHeap, HEAP_NO_SERIALIZE, iMaskLen * sizeof(TCHAR)); _tcscpy_s(pszNewMask, iMaskLen, mask->szMask); _tcsupr_s(pszNewMask, iMaskLen); mask->szMaskUpper = pszNewMask; TCHAR destfile[MAX_PATH]; if (mask->iIconIndex == IDI_NOTFOUND || mask->iIconIndex == IDI_UNKNOWN || mask->iIconIndex == IDI_UNDETECTED) GetModuleFileName(g_hInst, destfile, MAX_PATH); else { _tcsncpy_s(destfile, g_szSkinLib, _TRUNCATE); struct _stat64i32 stFileInfo; if (_tstat(destfile, &stFileInfo) == -1) return; } LPTSTR SectName = getSectionName(mask->iSectionFlag); if (SectName == NULL) return; SKINICONDESC sid = { 0 }; sid.flags = SIDF_ALL_TCHAR; sid.section.t = SectName; sid.pszName = mask->szIconName; sid.description.t = mask->szClientDescription; sid.defaultFile.t = destfile; sid.iDefaultIndex = -mask->iIconIndex; mask->hIcolibItem = IcoLib_AddIcon(&sid); }
/** * @param pszValue - new field value. * @param nValueSize - buffer size. */ void CNumEdit::SetValue(PTSTR pszValue, int nValueSize) { _tcsupr_s(pszValue, nValueSize); SetWindowText(pszValue); }