中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

開發(fā)公司英文企業(yè)站seo

開發(fā)公司英文,企業(yè)站seo,背景做網(wǎng)站公司,西安網(wǎng)站制作推廣進(jìn)程狀態(tài)的判斷包括驗(yàn)證進(jìn)程是否存在,實(shí)現(xiàn)方法是通過枚舉系統(tǒng)內(nèi)的所有進(jìn)程信息,并將該進(jìn)程名通過CharLowerBuff轉(zhuǎn)換為小寫,當(dāng)轉(zhuǎn)換為小寫模式后則就可以通過使用strcmp函數(shù)對(duì)比,如果發(fā)現(xiàn)繼承存在則返回該進(jìn)程的PID信息,…

進(jìn)程狀態(tài)的判斷包括驗(yàn)證進(jìn)程是否存在,實(shí)現(xiàn)方法是通過枚舉系統(tǒng)內(nèi)的所有進(jìn)程信息,并將該進(jìn)程名通過CharLowerBuff轉(zhuǎn)換為小寫,當(dāng)轉(zhuǎn)換為小寫模式后則就可以通過使用strcmp函數(shù)對(duì)比,如果發(fā)現(xiàn)繼承存在則返回該進(jìn)程的PID信息,否則返回-1。

int GetProcessStatus(const char *procressName)
{char pName[MAX_PATH];strcpy(pName, procressName);                           // 拷貝數(shù)組CharLowerBuff(pName, MAX_PATH);                        // 將名稱轉(zhuǎn)換為小寫PROCESSENTRY32 currentProcess;                                    // 存放快照進(jìn)程信息的一個(gè)結(jié)構(gòu)體currentProcess.dwSize = sizeof(currentProcess);                   // 在使用這個(gè)結(jié)構(gòu)之前,先設(shè)置它的大小HANDLE hProcess = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); // 給系統(tǒng)內(nèi)的所有進(jìn)程拍一個(gè)快照if (INVALID_HANDLE_VALUE != hProcess){BOOL bMore = Process32First(hProcess, &currentProcess);while (bMore){CharLowerBuff(currentProcess.szExeFile, MAX_PATH);        // 將進(jìn)程名轉(zhuǎn)換為小寫if (strcmp(currentProcess.szExeFile, pName) == 0)         // 比較是否存在此進(jìn)程{CloseHandle(hProcess);return currentProcess.th32ProcessID;}bMore = Process32Next(hProcess, &currentProcess);}CloseHandle(hProcess);}return -1;
}

有時(shí)候我們需要判斷自身進(jìn)程是否被重復(fù)運(yùn)行了,這種需求在軟件開發(fā)中經(jīng)常會(huì)遇到,通常該需求可以使用CreateMutex創(chuàng)建或打開一個(gè)互斥量對(duì)象(Mutex Object),在多線程/進(jìn)程的環(huán)境下,互斥量可用于控制對(duì)某個(gè)共享資源的訪問。其函數(shù)聲明如下:

HANDLE CreateMutex(LPSECURITY_ATTRIBUTES lpMutexAttributes,BOOL                  bInitialOwner,LPCTSTR               lpName
);

其中,lpMutexAttributes 是用于指定新創(chuàng)建的互斥量的安全描述符的指針;bInitialOwner 表示一個(gè)布爾值,指定初始所有權(quán)標(biāo)記,為 TRUE 表示調(diào)用線程將擁有該互斥量,否則表示它不屬于調(diào)用線程;lpName 是可選的,用于命名互斥體,以使得其他線程或者進(jìn)程可以通過這個(gè)名字來打開該互斥量對(duì)象。

CreateMutex 函數(shù)會(huì)返回一個(gè)內(nèi)核對(duì)象句柄,用于在之后對(duì)該互斥體進(jìn)行引用和操作,通過使用互斥體可以很容易的實(shí)現(xiàn)對(duì)進(jìn)程運(yùn)行狀態(tài)的判斷。

#include <Windows.h>
#include <stdio.h>// 判斷是否重復(fù)運(yùn)行
BOOL IsAlreadyRun()
{HANDLE hMutex = NULL;hMutex = CreateMutex(NULL, FALSE, "RUN");if (hMutex){if (ERROR_ALREADY_EXISTS == GetLastError())return TRUE;}return FALSE;
}int main(int argc, const char * argv[])
{if (IsAlreadyRun() == TRUE)printf("重復(fù)運(yùn)行 \n");elseprintf("沒有重復(fù)運(yùn)行 \n");system("pause");return 0;
}

對(duì)進(jìn)程位數(shù)的判斷也是有必要的,通常在Windows系統(tǒng)下進(jìn)程位數(shù)的有多種方法實(shí)現(xiàn),第一種方式GetNativeSystemInfo調(diào)用該函數(shù)并判斷函數(shù)內(nèi)的特定成員,即可得到當(dāng)前系統(tǒng)是否為64位,當(dāng)然通過使用Is64BitPorcess函數(shù)也可實(shí)現(xiàn)對(duì)特定進(jìn)程的判斷,此方式實(shí)現(xiàn)原理是通過調(diào)用IsWow64Process函數(shù)實(shí)現(xiàn);

#include <stdio.h>
#include <Windows.h>
#include <tlhelp32.h>// 判斷自身系統(tǒng)是否為64位
BOOL IsSelf64bitSystem()
{SYSTEM_INFO si;GetNativeSystemInfo(&si);if (si.wProcessorArchitecture == PROCESSOR_ARCHITECTURE_AMD64 ||si.wProcessorArchitecture == PROCESSOR_ARCHITECTURE_IA64)return TRUE;elsereturn FALSE;
}// 判斷指定進(jìn)程是否為64位進(jìn)程
BOOL Is64BitPorcess(DWORD dwProcessID)
{HANDLE hProcess = OpenProcess(PROCESS_QUERY_INFORMATION, FALSE, dwProcessID);if (hProcess){typedef BOOL(WINAPI *LPFN_ISWOW64PROCESS) (HANDLE, PBOOL);LPFN_ISWOW64PROCESS fnIsWow64Process = (LPFN_ISWOW64PROCESS)GetProcAddress(GetModuleHandleW(L"kernel32"), "IsWow64Process");if (NULL != fnIsWow64Process){BOOL bIsWow64 = FALSE;fnIsWow64Process(hProcess, &bIsWow64);CloseHandle(hProcess);if (bIsWow64)return FALSE;elsereturn TRUE;}}return FALSE;
}int main(int argc, char *argv[])
{PROCESSENTRY32 pe32;pe32.dwSize = sizeof(pe32);HANDLE hProcessSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);BOOL bMore = Process32First(hProcessSnap, &pe32);while (bMore){printf("進(jìn)程PID: %5d 是否64位: %d 進(jìn)程名稱: %s\n",pe32.th32ProcessID, Is64BitPorcess(pe32.th32ProcessID), pe32.szExeFile);bMore = Process32Next(hProcessSnap, &pe32);}system("pause");return 0;
}

本文作者: 王瑞
版權(quán)聲明: 本博客所有文章除特別聲明外,均采用 BY-NC-SA 許可協(xié)議。轉(zhuǎn)載請注明出處!

http://m.risenshineclean.com/news/60103.html

相關(guān)文章:

  • javascript做網(wǎng)站重要嗎網(wǎng)絡(luò)營銷公司網(wǎng)絡(luò)推廣
  • 如何建設(shè)數(shù)據(jù)庫搜索網(wǎng)站常用搜索引擎有哪些
  • 南寧seo網(wǎng)站排名優(yōu)化公司百度愛采購官方網(wǎng)站
  • 如何在360做網(wǎng)站SEO百度引流推廣費(fèi)用多少
  • 做花生的網(wǎng)站江蘇做網(wǎng)站的公司有哪些
  • 淘寶網(wǎng)站代理怎么做的網(wǎng)站服務(wù)器ip查詢
  • wordpress如何設(shè)置在某一分類目錄下的文章都顯示特定小工具seo關(guān)鍵詞排名優(yōu)化推薦
  • 獨(dú)立站有哪些常見平臺(tái)手機(jī)制作網(wǎng)站的軟件
  • web開發(fā)不只是做網(wǎng)站企業(yè)網(wǎng)站建設(shè)流程
  • 網(wǎng)站超級(jí)推廣seo單詞優(yōu)化
  • 免費(fèi)建立手機(jī)網(wǎng)站嗎長沙sem培訓(xùn)
  • 學(xué)校網(wǎng)站logo怎么做推廣平臺(tái)都有哪些
  • 云優(yōu)化網(wǎng)站建設(shè)seo有什么作用
  • 西安網(wǎng)址開發(fā) 網(wǎng)站制作一個(gè)網(wǎng)站推廣
  • 潮牌衣服網(wǎng)站建設(shè)可行性分析常用的seo查詢工具
  • 溫州建設(shè)工程信息網(wǎng)站seo優(yōu)化按天扣費(fèi)
  • 用vs做網(wǎng)站表格向上居中zac博客seo
  • 南昌網(wǎng)站建設(shè)那家好一個(gè)新產(chǎn)品怎么推廣
  • 貴陽app定制開發(fā)鄭州seo優(yōu)化外包顧問阿亮
  • 江門關(guān)鍵詞排名工具鄭州seo外包顧問熱狗
  • you物公館網(wǎng)站建設(shè)灰色詞優(yōu)化培訓(xùn)
  • 廳網(wǎng)站集約化建設(shè)長沙百度搜索排名
  • 太原做網(wǎng)站需要多少錢阿里巴巴運(yùn)營
  • 百度網(wǎng)站地圖提交網(wǎng)頁優(yōu)化最為重要的內(nèi)容是
  • wordpress 破解seo咨詢師
  • 做電腦網(wǎng)站手機(jī)能顯示不出來怎么辦怎樣做推廣營銷
  • 廣東省路橋建設(shè)有限公司網(wǎng)站泉州seo按天收費(fèi)
  • 免費(fèi)制作的企業(yè)網(wǎng)站云南seo簡單整站優(yōu)化
  • 福田區(qū)做網(wǎng)站公司青島做網(wǎng)站的公司哪家好
  • 個(gè)人網(wǎng)站建設(shè)方案模板線上銷售渠道有哪幾種