Dani1988 发表于 2023-10-28 09:24:03

发一个能获取QQ号的lisp函数,免币

本帖最后由 Dani1988 于 2023-10-28 10:37 编辑

C#编写,定义了一个lisp函数readtencentqqid
先netload这个dll,然后就有readtencentqqid这个lisp函数了

(readtencentqqid)
"674971560"
返回一个QQ号


飞雪神光 发表于 2023-10-28 11:48:58

我来发个测评:CAD07不支持 21上可用支持现在旧版QQ(第一次使用返回 "登陆成功")与TIM版QQ 不支持新版QQ

Dani1988 发表于 2023-10-28 12:14:42

飞雪神光 发表于 2023-10-28 11:48
我来发个测评:CAD07不支持 21上可用支持现在旧版QQ(第一次使用返回 "登陆成功")与TIM版QQ 不支持新版QQ ...

net4.5的版本,CAD2013及以上支持,没用过新版QQ,新版不支持正常:lol

baitang36 发表于 2023-10-28 21:22:24

本帖最后由 baitang36 于 2023-10-28 21:24 编辑

和下面这个有区别吗?定义lisp函数获取登录的QQ号 - AutoCAD.net/VB.net/C# 编程技术 - AutoCAD论坛 - 明经CAD社区 - Powered by Discuz! (mjtd.com)
      //导入库 
      
      private static extern int FindWindow(string lpClassName, string lpWindowName);

      
      public static extern int GetWindowText(int hwnd, StringBuilder lpString, int cch);
      
      public static extern int GetWindow(int hwnd, int wCmd);

      
      public static extern int GetClassName(int hWnd, StringBuilder lpClassName, int nMaxCount);
      
      public static string ReadTencentqqId(ResultBuffer rb)
      {
            string str = "";
            int hWin = FindWindow("CTXOPConntion_Class", null);
            if (hWin == 0)
            {
                return null;
            }
            System.Text.StringBuilder sbf = new StringBuilder(256);
            StringBuilder sbfClass = new StringBuilder(256);
            while (hWin > 0)
            {
                GetWindowText(hWin, sbf, sbf.Capacity);
                if (sbf.ToString().Contains("OP_"))
                {
                  int index = sbf.ToString().IndexOf('_');
                  str = sbf.ToString().Substring(index + 1, sbf.Length - index - 1);
                  break;
                }
            }

            return str;

      }

Dani1988 发表于 2023-10-29 08:54:04

baitang36 发表于 2023-10-28 21:22
和下面这个有区别吗?定义lisp函数获取登录的QQ号 - AutoCAD.net/VB.net/C# 编程技术 - AutoCAD论坛 - 明经 ...

差不多,加了一点我自己的代码
页: [1]
查看完整版本: 发一个能获取QQ号的lisp函数,免币