易语言吧 关注:266,524贴子:1,664,217
  • 33回复贴,共1

【求助】谁知道怎么用Unicode窗口

只看楼主收藏回复

API创建窗口就算了...因为就是为了用易语言自带的画窗口...用API的话也就没有用易语言的必要了...纯API窗口在某种意义上C++的确会更方便...
← ←本来我是想Hook掉CreateWindowExA,然后自己调用CreateWindowExW...成功是成功了....但是拿Spy看了下窗口还是ANSI的...后来百度得知窗口ANSI还是UNICODE取决于注册窗口类的时候使用 RegisterClassA还是RegisterClassW决定的...
然后想说自己hook掉RegisterClassA然后内部调用UNICODE版本...结果悲伤的发现RegisterClass传递的参数是一个自定义数据类型...如果要取子程序地址,易语言要求参数必须是基本数据类型.....
理论上说RegisterClass的参数我也不需要修改,应该可以用整数型代替,反正说白了就是传递个地址...但是结果是窗口根本创建不出来程序变成秒退了QAQ
求解决方案
(PS:易语言官方论坛有个UNICODE化控件的模块...但是不开源....关键是他那个退出窗口的时候用需要使用 UNICODE类.结束(),但是这个方法会结束整个进程。如果不调用结束的话对一个窗口重复打开,多次UNICODE化后程序也会自动秒退.....)
顺便吐槽下易语言不支持UNICODE遇到非简体中文的系统伤不起啊伤不起....


IP属地:浙江1楼2014-02-16 13:16回复
    IP属地:浙江2楼2014-02-16 13:17
    收起回复
      不知道


      IP属地:山东来自Android客户端3楼2014-02-16 13:34
      回复
        你要取什么的指针?子程序?自定义数据类型?


        IP属地:山东来自Android客户端4楼2014-02-16 13:37
        收起回复
          布吉岛……API不熟……你要达到什么目的?可以换个方法……


          来自手机贴吧5楼2014-02-16 13:50
          收起回复
            樉正解,用汇编代码就能取@揰掵佲


            来自Android客户端6楼2014-02-16 14:14
            回复
              貌似楼主已经…


              IP属地:福建来自手机贴吧7楼2014-02-16 15:50
              收起回复
                不明觉厉


                星座王
                点亮12星座印记,去领取
                活动截止:2100-01-01
                去徽章馆》
                IP属地:广东8楼2014-02-16 15:59
                回复
                  编码,这听起来就不容易


                  来自Windows8客户端9楼2014-02-16 16:03
                  回复
                    编码转换?


                    来自百度影音浏览器10楼2014-02-16 18:26
                    回复
                      CreateWindowExW


                      来自iPhone客户端11楼2014-02-16 18:36
                      收起回复
                        表示对编码不是很熟悉…… 所以路过了…


                        IP属地:内蒙古来自Android客户端13楼2014-02-17 13:00
                        回复
                          看不懂
                          ——来自 爱贴吧 Windows Phone 客户端


                          来自WindowsPhone客户端14楼2014-02-17 13:35
                          回复