2016-06-21 3 views
1

Я пытаюсь использовать SendKeys для отправки специальных символов, например é.Отправить специальный символ, например «é», используя VBscript SendKey

Если я использую

set mySendKeys = CreateObject("WScript.shell") 
mySendKeys.SendKeys "é" 

Наверняка он не будет работать ...

Я думаю, что интерпретировать характер с помощью asc("é"), получить его результат chr(233), то mySendKeys.SendKeys chr(233)

Звучит неплохо? ... но сгенерирует ошибку Invalid procedure call or argument

Я нашел такой же вопрос here

Или есть ли другой способ имитации клавиатуры для ввода специального символа, подобного этому?

+0

Это не на клавиатуре и не имеет виртуальный код клавиши. SendKeys не является международным сообществом и плохого решения большинства проблем. Любой инструмент автоматизации тестирования должен иметь более надежное средство для этого, например, собственную автоматизацию пользовательского интерфейса Microsoft. –

+0

Я заметил, что вы отметили это как вопрос UFT. Есть ли специальная причина использовать 'SendKeys' вместо использования метода' .Set' объекта? Как уже упоминалось @Cody, 'SendKeys' является плохим решением, и я бы избегал его –

ответ

1

Вы должны попробовать это так:

set ws = CreateObject("WScript.shell") 
ws.SendKeys chr(233) 

EDIT:

Dim i,x,a,ws 
i = InputBox("Entrer un caractère ou une phrase pour obtenir son Code Unicode Correspondant !","test","éè@!%") 
If i <> "" Then 
    For x = 1 To Len(i) 
     If x <> Len(i) Then 
      a = a & "ChrW(" & AscW(Mid(i,x,1)) & ")" & "&" 
     Else 
      a = a & "ChrW(" & AscW(Mid(i,x,1)) & ")" 
     End if 
    Next 
    Inputbox "Le Code Unicode Correspondant pour " & qq(i) & " est:",,a 
End If 

wscript.sleep 5000 
set ws = CreateObject("WScript.shell") 
ws.SendKeys qq(i) 
'****************************************************************** 
Function qq(strIn) 
    qq = Chr(34) & strIn & Chr(34) 
End Function 
'****************************************************************** 
+0

Это то, что я пытался ... – nwpulele

+0

@nwpulele Я не понимаю вашу цель, но в любом случае попробуйте мое редактирование! – Hackoo

+0

Спасибо за помощь! Я выполнил ваш код, и он только выводит '' @! ', Похоже, не может отправить' éè' и '%' отсутствует ... Я продолжу попытку ... – nwpulele

Смежные вопросы