zoukankan      html  css  js  c++  java
  • 动态调用c++的dll Virus

    是我在论坛看到的一个例子,所以记录下来,以后用到可以参考。
    [
    DllImport(
    "Kernel32.dll")
    ]
    public static extern int LoadLibrary(String funcname);

    [
    DllImport(
    "Kernel32.dll")
    ]
    public static extern int GetProcAddress(int handle, String funcname);

    [
    DllImport(
    "Kernel32.dll")
    ]
    public static extern int FreeLibrary(int handle);

    //
    // 注意: 参数列表及返回值要与方法(test)对应..
    //
    public delegate int Invoker(string ProjName, string SchemeName, string Mile, ref double ContnMile, ref bool Reliability, ref short LineKind);

    static void Main(string[] args)
    {
    int handle = LoadLibrary(@"test.dll"); //要调用的类库..

    if (handle != 0)
    {
    int address = GetProcAddress(handle, "test"); //指定函数名称..

    if (address != 0)
    {
    Invoker invoker
    = (Invoker)Marshal.GetDelegateForFunctionPointer(new IntPtr(address), typeof(Invoker));

    //use invoker -> demo: invoker(...);

    FreeLibrary(handle);
    }
    }
    }

    【Blog】http://virusswb.cnblogs.com/

    【MSN】jorden008@hotmail.com

    【说明】转载请标明出处,谢谢

    反馈文章质量,你可以通过快速通道评论:

  • 相关阅读:
    P1182 数列分段Section II
    P1119 灾后重建
    P1133 教主的花园
    P1077 摆花
    P2002 消息扩散
    P2341 [HAOI2006]受欢迎的牛(tarjan+缩点)
    luoguP1726 上白泽慧音
    P1053 篝火晚会
    P2296 寻找道路
    P1156 垃圾陷阱
  • 原文地址:https://www.cnblogs.com/virusswb/p/1122446.html
Copyright © 2011-2022 走看看