在Qt中使用大漠插件


    因工作需要,項目需求(要編寫一個營銷軟件,其中一個功能是控制QQ和微信發送廣告消息給指定的聯系人或群組,

因為我Windows和逆向水平還不到家,起初的調用Windows API的設計方案不可行,於是只好使用第三方庫:大漠插件=_=),

故采用大漠插件實現我所需要的功能。關於大漠插件,不多說,很多人用它寫輔助=_=更多詳細介紹,請參考這里

    本來是想用DuiLib做界面的(感覺用DuiLib做界面更靈活),但考慮到開發效率(其實最重要的是我對Win32和MFC的熟悉程

度還不夠),於是我用了Qt。

    進入正題,如何在Qt中使用大漠插件?

    首先,下載大漠插件,提取碼:91c0(從版本3.1235開始,必須付費后才能使用,我用的是3.1233)。

    然后,對大漠插件進行注冊(不注冊也能調用其中的接口,不過那是另一種使用大漠插件的方法,在此不做描述),以管理員

身份運行cmd,執行regsvr32 大漠插件絕對路徑名,例如:regsvr32 E:\Packages\C++\大漠插件\dm.dll,系統會提示注冊成功

(可以編寫代碼完成注冊,不過應用要以管理員身份運行)。

    接着,使用Qt的一個工具dumpcpp導出dm.dll對應的.h和.cpp文件(在我的電腦上,這個工具的位置是D:\Qt5.9.0\5.9\msvc2015\bin)。

運行命令dumpcpp 大漠插件文件名,例如:dumpcpp E:\Packages\C++\大漠插件\dm.dll,會生成dm.h和dm.cpp(我沒有把dumpcpp

添加到環境變量,所以dm.h和dm.cpp的生成位置在D:\Qt5.9.0\5.9\msvc2015\bin),把生成的頭文件和源文件移動並添加到自己的工程里。

    最后,在pro文件中加入axcontainer,例如:QT += core gui axcontainer(因為大漠插件是采用COM接口編寫的,所以要添加axcontainer模塊),

接下來包含頭文件dm.h后就可以開始調用大漠接口了^_^以下是簡單的示例:

    Dm::Idmsoft dm;
    if (dm.setControl("dm.dmsoft"))  //初始化COM對象
    {
        QMessageBox::information(this, "DMTest", "大漠插件版本:" + dm.Ver());
    }
    else
    {
        QMessageBox::critical(this, "錯誤", "大漠插件初始化失敗,請先注冊");
    }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM