2015-11-02 102 views
1

所以,目前我基本上复制使用按Ctrl +ç我发送到窗口资源管理器中的文件夹的名称。被复制的文本通常充满了Unicode字符。然后,我使用ClipGet()这样的:发送Unicode字符

$data = ClipGet() 
Send($data) 

不幸的是,ClipGet()命令不能很好地使用Unicode工作,因此而不是发送文件夹的正确的标题,我得到了一堆?字符。我真的不知道我应该怎么做Send()正确的文字填充Unicode字符。

回答

1

剪辑得到完美的作品。发送()是问题。

从论坛

;====================================================== 
; 
; Function Name: _SendUnicode("string") 
; Description: Send a unicode or an ASCII string. 
; Parameter(s): $string is the string you want to send. 
; Requirement(s): String Input. 
; Return Value(s): None 
; Author(s):  Robie Zhou ([email protected]) 
; 
;====================================================== 
Func _SendUnicode($string) 
    Local $char 
    Local $code 

    For $i = 1 to StringLen($string) 
     $char = StringMid($string, $i, 1) 
     $code = Asc($char) 
     If $code > 127 Then 
      $code = $code * 256 
      $i = $i + 1 
      $char = StringMid($string, $i, 1) 
      $code = $code + Asc($char) 
     EndIf 
     Send("{ASC " & $code & "}") 
    Next 
EndFunc