程式設計實現企業即時通訊軟體

2021-04-17 18:15:05 字數 2177 閱讀 2189

程式設計實現企業即時通訊軟體

在找到要處理的通訊後,應該用cm_get_devnode_status函式和通訊獲取其狀態,忽

略被隱藏的通訊。

以下為引用:

bool cdevicemanager::isclasshidden(const guid *clsguid) const

return hidden;

}今天水木上有位朋友問我如何解除安裝企業即時通訊軟體inpcap的驅動。因為此類驅動跟企業繫結很緊密,

解除安裝的時候最好是要把企業重起一下(snifferpro就是如此)。而重起企業的程式實現又很

少有資料介紹,前段時間好容易看到一篇文章,居然是用字串查詢到控制面板下面呼叫ap

plet,呵呵,夠狠 -_-b。剛好前幾個月有同事有類似需求,我寫過乙個命令列下重起企業

的小工具,就把它翻出來大概介紹一下實現思路。

以下為引用:

hdevinfo m_hdevinfo = ::setupdigetclassdevs(null, null, null, digcf_allclasses |

digcf_present);

然後使用setupdienumdeviceinfo企業即時通訊軟體列舉型別中所有的通訊

以下為引用:

sp_devinfo_data did = ;

for(int i=0; ::setupdienumdeviceinfo(m_hdevinfo, i, &did); i++)

dword dwstatus = 0, dwproblem = 0;

if(cr_success != ::cm_get_devnode_status(&dwstatus, &dwproblem, did.devinst,0))

if(dwstatus & dn_no_show_in_dm || isclasshidden(&did.classguid))

企業即時通訊軟體滿足上述限制的通訊,就是我們要處理的企業。可以直接修改其狀態:setupdisetclas

sinstallparams函式設定引數;setupdicallclassinstaller完成引數修改。

對剩下的通訊則根據其class進行過濾,只處理net型別通訊,如果前面指定只獲取net

通訊則此步驟可以忽略。

以下為引用:

const std::string cdevicemanager::getproperty(sp_devinfo_data& did, dword proper

ty) const

else

}buf.resize(strlen(buf.c_str()));

return buf;}//

// call the classinstaller and perform the change.

//if(!::setupdicallclassinstaller(dif_propertychange, m_hdevinfo, &did))

return true;

}changedevicestate(did, dics_stop); // 停止

changedevicestate(did, dics_start); // 啟動

changedevicestate(did, dics_enable); // 啟用

changedevicestate(did, dics_disable); // 禁用

if(stricmp(getproperty(did, spdrp_classguid).c_str(), "") == 0)

以下為引用:

bool cdevicemanager::changedevicestate(sp_devinfo_data& did, dword state) const

;pcp.classinstallheader.installfunction = dif_propertychange;

pcp.scope = (state == dics_start || state == dics_stop )? dics_flag_configspec

ific : dics_flag_global;

pcp.statechange = state;

if(!::setupdisetclassinstallparams(m_hdevinfo, &did,

(sp_classinstall_header *)&pcp, sizeof(pcp)))

XEIM XEIM企業即時通訊

有興趣的朋友可以研究一下,有問題可以在此跟帖,我會逐個回答。xeim 是一套企業即時通訊軟體,可以用於區域網或整個網際網路。c 開發,開發工具是visual vc 6.0。基本上避免使用任何sdk,或者其他庫,所以,直接可以在 visual vc 6.0 下編譯通過。這套軟體是feim studio...

即時通訊IM 企業級即時通訊EIM介紹

五.eim 1 企業級im需求分析 1.可管理性 專門為企業定製,可以進行企業的組織結構,人員等的管理,對聊天內容進行記錄和審計 2.安全性 訊息加密,不被監控 3.強大的網路會議功能 4.易與企業其他應用整合 3 企業級im的特點 對通訊的行為 許可權等有相應的管理和控制,同時必須保障企業的安全性...

XMMPP實現即時通訊

首先搭載伺服器和資料庫 搭載伺服器我用的是openfire,資料庫用的是mysql 這裡推薦兩個鏈結 配置mysql,用的是mysql workbench 配置伺服器 openfire 先配置好資料庫然後配置伺服器 兩個都開啟 下乙個xmpp客戶端,就是用來測試的 我下的是adium 這裡下然後在a...