tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re^2: SendInput検索中
投稿日: 2012/06/07(Thu) 13:45
投稿者@chie
文字をメモ帳などに打ち出すところまではできました

今行き詰っているのは
文字をABC→vbKeyA vbKeyb vbKeyc に
変換する関数がわかりません 
Asciiコードと同じではない見たいです。
出力すると数字が表示されてしまいました

先に「お行儀が悪い」とおっしゃっていた
貼り付け機能を使えれば そちらのほうが楽なのかもしれません




以下サンプルを抜き出して使わせていただいてる抜粋です
----------------------------------------------------
Private Sub CommandSTR_Click()
On Error GoTo errSTR
Dim x As Long, y As Long
    x = CLng(Label1.Caption)
    y = CLng(Label2.Caption)

        SetCursorPos x, y
        mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
        mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
    

Dim wVkKey() As Integer
  
    
    Dim strAddress As String
    Dim LenAddress As Integer
    
    Dim i As Long
    
    strAddress = "aaa.bbb@ccc.com"
    
    LenAddress = Len(strAddress)
    LenPassword = Len(strPassword)
    
     Dim UpDown() As Integer
     Dim tempAscii As Integer
    
    ReDim wVkKey(LenAddress * 2 - 1) As Integer
    ReDim UpDown(LenAddress * 2 - 1) As Integer
    
    For i = 0 To LenAddress - 1
        tempAscii = Asc(Mid(strAddress, i + 1, 1))
    
        wVkKey(i * 2 + 0) = tempAscii: UpDown(i * 2 + 0) = 0 'UpDown(0) = 0 は省略可
        wVkKey(i * 2 + 1) = tempAscii:   UpDown(i * 2 + 1) = 1  '0 以外は keyUP
    
    Next i
    
    sKeyEventSet LenAddress * 2, wVkKey, UpDown
    
Exit Sub
errSTR:
    MsgBox Error
    Err.Clear
End Sub

Public Sub sKeyEventSet(nInput As Long, _
                         wVkKey() As Integer, UpDown() As Integer)
    Dim inputevents() As INPUT_TYPE
    Dim keyevent As KEYBDINPUT
    Dim Count As Integer
    ReDim inputevents(nInput - 1) As INPUT_TYPE
    For Count = 0 To nInput - 1
        With keyevent
            .wVk = wVkKey(Count)        '操作キーコード
            .wScan = MapVirtualKey(wVkKey(Count), 0)  'スキャンコードを指定
            If UpDown(Count) = 0 Then   'キーDown
                .dwFlags = KEYEVENTF_EXTENDEDKEY Or 0
            Else                        'キーUP
                .dwFlags = KEYEVENTF_EXTENDEDKEY Or KEYEVENTF_KEYUP
            End If
            .time = 0
            .dwExtraInfo = 0
        End With
        inputevents(Count).dwType = INPUT_KEYBOARD
        CopyMemory inputevents(Count).xi(0), keyevent, Len(keyevent)
    Next Count
    Call SendInput(nInput, inputevents(0), Len(inputevents(0)))
End Sub

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。