2 Matching Annotations
  1. Apr 2022
    1. 如果直接使用 DllCall 会报错,那么使用 DllLoad 先将 dll 文件加载有时就可以解决问题

      猜测难道是 golang 编译的 dll 文件太大(2-3Mb)导致DllCall 会直接导致 ahk 程序退出?

  2. Nov 2021
    1. 解决 Error: (122) 传递给系统调用的数据区域太小

      可以调用一次 StrPut, 来计算特定编码中的字符串所需的缓冲大小, 然后再次对字符串进行编码并将其写入缓冲. 这个过程可以通过利用这个函数来简化

      ; 返回包含字符串的缓冲对象.
      StrBuf(str, encoding)
      {
          ; 计算所需的大小并分配缓冲.
          buf := Buffer(StrPut(str, encoding))
          ; 复制或转换字符串.
          StrPut(str, buf, encoding)
          return buf
      }