Question

Is there an equvelent to vb6 for this vb script

Asked by: 1030071002

Is there an equvelent to vb6 for this vb script I only want the answer to vb6

Option Explicit
Dim shell
Set shell = CreateObject("WScript.Shell")
shell.Run "iexplore website"
Wscript.Sleep 8000
shell.SendKeys "{TAB}"
WScript.Sleep 10
shell.SendKeys "{TAB}"
WScript.Sleep 10
shell.SendKeys "{TAB}"
WScript.Sleep 10
shell.SendKeys "{TAB}"
WScript.Sleep 10
shell.SendKeys "{TAB}"
WScript.Sleep 10
shell.SendKeys "{TAB}"
WScript.Sleep 10
shell.SendKeys "{TAB}"
WScript.Sleep 10
shell.SendKeys "{TAB}"
WScript.Sleep 10
shell.SendKeys "{TAB}"
WScript.Sleep 10
shell.SendKeys "{TAB}"
WScript.Sleep 10
shell.SendKeys "{TAB}"
WScript.Sleep 10
shell.SendKeys "{TAB}"
WScript.Sleep 10
shell.SendKeys "{TAB}"
WScript.Sleep 10
shell.SendKeys "{TAB}"
WScript.Sleep 10
shell.SendKeys "{TAB}"
WScript.Sleep 10
shell.SendKeys "{TAB}"
WScript.Sleep 10
shell.SendKeys "username"
WScript.Sleep 10
shell.SendKeys "{TAB}"
WScript.Sleep 10
shell.SendKeys "password"
WScript.Sleep 10
shell.SendKeys "{TAB}"
WScript.Sleep 300
shell.SendKeys "{ENTER}"
WScript.Quit

                                  
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:

Select allOpen in new window

This Question has been solved and asker verified All Experts Exchange premium technology solutions are available to subscription members.

Subscribe now for full access to Experts Exchange and get

Instant Access to this Solution

  • Plus...
  • 30 Day FREE access, no risk, no obligation
  • Collaborate with the world's top tech experts
  • Unlimited access to our exclusive solution database
  • Never be left without tech help again

Subscribe Now

Asked On
2009-10-20 at 13:45:37ID24828495
Tags

Is there an equvelent to vb6 for this vb script

Topics

Visual Basic Programming

,

Miscellaneous Programming

Participating Experts
2
Points
500
Comments
5

Trusted by hundreds of thousands everyday for fast, accurate and reliable tech support.

  • "The time we save is the biggest benefit of Experts Exchange to Warner Bros. What could take multiple guys 2 hours or more each to find is accessed in around 15 minutes on Experts Exchange." Mike Kapnisakis, Warner Bros.
  • "Our team likes having a resource that is more secure than just using Google and most experts using this service really know their stuff. It's nice to look here first versus using Google." Dayna Sellner, Lockheed Martin
  • "Anytime that I've been stumped with a problem, 9 out of 10 times Experts Exchange has either the accepted solution or an open discussion of the potential solution to the problem." Kenny Red, eBay Inc.

See what Experts Exchange can do for you.

Got a question?

We've got the answer.

Experts Exchange has been collecting answers to technology questions since 1996…3 million and counting! If you have a question, chances are we already have your answer.

Screenshot of Experts Exchange Knowledgebase

Need individual assistance?

Our experts are ready to help.

If you can't find the exact answer you're looking for, ask our exclusive community of 50,000 experts. You’ll get a personalized answer from a trusted professional.

Screenshot of Experts Exchange Knowledgebase

Want to learn from the best?

Read articles from industry experts.

Thousands of free tech tips, tricks, how-to’s and tutorials are available in our peer reviewed articles section. See for yourself how smart our experts are, no login required.

Screenshot of an Article

Working on a long term project?

Store your work and research.

Save solutions to your questions, answers you’ve discovered through searching plus helpful articles in your personal knowledgebase for easy future access.

Screenshot of Experts Exchange Knowledgebase

Access the answers to your technology questions today.

Subscribe Now

30-day free trial. Register in 60 seconds.

What Makes Experts Exchange Unique?

Members of the expert community talk about why the experience at Experts Exchange is different than what you will find anywhere else.

Trusted by the world's most respected brands.

image of each brand's logo

Faithfully serving IT professionals since 1996.

Experts Exchange Logo

Try it out and discover for yourself.

Subscribe Now

30-day free trial. Register in 60 seconds.

Related Solutions

  1. RS-422 and VB6
    Does anyone know of a PCI card that supports asynchronous RS-422 communications and comes with a VB6 control (like RS-232 is provided by VB6) ???
  2. VB and Scripting
    I have developed an application in VB6 (SP4) I would now like to expand its functionality so that the user can create, store and run their own scripts, preferably written in VB or VBA etc. These scripts would be required to interact with the application and/ or its data sou...
  3. What is the different bewteen VB6 and VBS (VB Script)…
    I have written many VB6 programs, but I didn't know any about VBS. What is the different bewteen VB6 and VBS (VB Script)? Please suggest some websites to learn VBS What is the advantages using VBS? lwsvcm
  4. vb6
    is vb6 worth learning what can u do with vb

Free Tech Articles

  1. WARNING: 5 Reasons why you should NEVER fix a computer for free.
    It is in our nature to love the puzzle. We are obsessed. The lot of us. We love puzzles. We love the challenge. We thrive on finding the answer. We hate disarray. It bothers us deep in our soul. W...
  2. SCCM OSD Basic troubleshooting
    SCCM 2007 OSD is a fantastic way to deploy operating systems, however, like most things SCCM issues can sometimes be difficult to resolve due to the sheer volume of logs to sift through and the dispe...
  3. Migrate Small Business Server 2003 to Exchange 2010 and Windows 2008 R2
    This guide is intended to provide step by step instructions on how to migrate from Small Business Server 2003 to Windows 2008 R2 with Exchange 2010. For this migration to work you will need the fo...
  4. Create a Win7 Gadget
    This article shows you how to create a simple "Gadget" -- a sort of mini-application supported by Windows 7 and Vista. Gadgets can be dropped anywhere on the desktop to provide instant information, ...
  5. Outlook continually prompting for username and password
    There have been a lot of questions recently regarding Outlook prompting for a username and password whilst using Exchange 2007. There are a few reasons why this would happen and I will try to cover t...
  6. Backup Exchange 2010 Information Store using Windows Backup
    There seems to be quite a lot of confusion around the ability to backup Exchange 2010 using the built in Windows Backup feature. This stems from the omission of this feature prior to Exchange 2007 s...

Cloud Class Webinars

  1. Avoiding Bugs in Microsoft Access
    Alison Balter takes and in-depth look at avoiding bugs in Access. In this webinar you will learn about using the immediate window to debug your applications, invoking the debugger, using breakpoints to troubleshoot, stepping through code, setting the next statement to execute, ...
  2. Top 10 Best New Features in Visio 2010
    Scott Helmers gives live demonstrations of the top 10 new features in Visio 2010. This webinar will teach you how to create compelling diagrams by adding shapes to the page with a single click, linking the shapes in a diagram to data in Excel (or SQL Server, or SharePoint), ...
  3. IT Consultant Business Secrets Revealed
    Michael Munger, Experts Exchange tech pro and IT consultant, pulls back the curtain on his very successful businesses and answers question on every IT consultant and business owner should know about. He shares secrets on what he did to solve the 5 most common problems in IT, ...
  4. Disaster Recovery and Business Continuity
    Quest CTO, Mike Billon, gives an overview of the steps involved in building a dunamic disaster recovery plan. Through case studies and an examination of software/hardware tooles for monitoring and testing, you'll gain a better understandin of where you are, where you want ...
  5. Organize Your Visio Diagrams with Containers and Lists
    Scott Helmers uses cross functional flowcharts, wireframe diagrams, data graphic legends and seating charts to teach you: how to ustilize all three new structured diagram components in Visio 2010, the best practices for organizeing shapes in previous version of Visio, how to organize ...
  6. How to Us Objects, Properties, Events and Methods in Microsoft Access
    Alison Dalter gives an in-depbth look at objects, properties, events and methods in Microsoft Access. In this webinar you will learn about using the object browser, referring to objects, working with properties and methods, working with object variables, understanding the ...

Join the Community

Give a Little. Get a Lot.

Join the community of experts here and help other tech pros by answering question in your area of expertise. You can earn FREE access to all Experts Exchange's premium features and resources.

Join the Community

Answers

 

by: Brook1966Posted on 2009-10-20 at 14:00:35ID: 25618552

For Sendkeys there is
and for Sleep you could do a wait...

There is a vb6 SendKeys Command but it has problems with Vista

 

by: 1030071002Posted on 2009-10-20 at 15:02:55ID: 25619119

could you show me a example

 

by: egl1044Posted on 2009-10-20 at 18:18:11ID: 25620099

Hi ,

It seems that you want to login to a website. You can use IE automation instead of (SendKeys) if you provide the website URL of the site I can show you an example.

 

by: 1030071002Posted on 2009-10-20 at 21:04:21ID: 25620745

no i want to use vb6 to do what ask

 

by: Brook1966Posted on 2009-10-21 at 04:37:44ID: 25622851

Here is a module for doing the SendKeys as an object that will also work on Vista
Just put this in your vb6 as a ClassModule and name it cSendKeys

Then use as such

' Declare this in a module where you might have a sub Main...
Public cSK As New cSendKeys


Private Your Sub

  cSK.KeyDown vbKeyTab

'  For the Pause there are two ways that I do it..
'  one is use a Pause Function
  Pause 10 ' wait 10 seconds
' the other is to put a timer on your form and set the seconds...
' enable the timer - then in the timer disable it again.
  tmrPause.Interval = 10000
 tmrPause.enabled = true
End Sub

Public Sub Pause(ByVal S As Integer)

1301     WaitTime = Timer + S
1302     Do While WaitTime > Timer
1303        DoEvents
1304     Loop

End Sub

Private Sub tmrPause_Timer()
  tmrPause.enable = false
End Sub


Option Explicit
 
Public Enum MoreKeyConstants
   VK_LWIN = &H5B 'Left Windows key (Microsoft® Natural® keyboard)
   VK_RWIN = &H5C 'Right Windows key (Natural keyboard)
   VK_APPS = &H5D 'Applications key (Natural keyboard)
   VK_SLEEP = &H5F 'Computer Sleep key
 
   VK_RMENU = &HA5 ' Right MENU key
VK_BROWSER_BACK = &HA6 'Windows 2000/XP: Browser Back key
VK_BROWSER_FORWARD = &HA7 'Windows 2000/XP: Browser Forward key
VK_BROWSER_REFRESH = &HA8 'Windows 2000/XP: Browser Refresh key
VK_BROWSER_STOP = &HA9 'Windows 2000/XP: Browser Stop key
VK_BROWSER_SEARCH = &HAA 'Windows 2000/XP: Browser Search key
VK_BROWSER_FAVORITES = &HAB 'Windows 2000/XP: Browser Favorites key
VK_BROWSER_HOME = &HAC 'Windows 2000/XP: Browser Start and Home key
VK_VOLUME_MUTE = &HAD 'Windows 2000/XP: Volume Mute key
VK_VOLUME_DOWN = &HAE  'Windows 2000/XP: Volume Down key
VK_VOLUME_UP = &HAF  'Windows 2000/XP: Volume Up key
VK_MEDIA_NEXT_TRACK = &HB0  'Windows 2000/XP: Next Track key
VK_MEDIA_PREV_TRACK = &HB1  'Windows 2000/XP: Previous Track key
VK_MEDIA_STOP = &HB2  'Windows 2000/XP: Stop Media key
VK_MEDIA_PLAY_PAUSE = &HB3  'Windows 2000/XP: Play/Pause Media key
VK_LAUNCH_MAIL = &HB4  'Windows 2000/XP: Start Mail key
VK_LAUNCH_MEDIA_SELECT = &HB5  'Windows 2000/XP: Select Media key
VK_LAUNCH_APP1 = &HB6  'Windows 2000/XP: Start Application 1 key
VK_LAUNCH_APP2 = &HB7  'Windows 2000/XP: Start Application 2 key
VK_OEM_1 = &HBA 'Used for miscellaneous characters; it can vary by keyboard. Windows 2000/XP: For the US standard keyboard, the ';:' key
 
VK_OEM_PLUS = &HBB 'Windows 2000/XP: For any country/region, the '+' key
VK_OEM_COMMA = &HBC 'Windows 2000/XP: For any country/region, the ',' key
VK_OEM_MINUS = &HBD 'Windows 2000/XP: For any country/region, the '-' key
VK_OEM_PERIOD = &HBE 'Windows 2000/XP: For any country/region, the '.' key
VK_OEM_2 = &HBF 'Used for miscellaneous characters; it can vary by keyboard. Windows 2000/XP: For the US standard keyboard, the '/?' key
VK_OEM_3 = &HC0 'Used for miscellaneous characters; it can vary by keyboard. Windows 2000/XP: For the US standard keyboard, the '`~' key
 
'  C1D7 Reserved
'  D8DA Unassigned
VK_OEM_4 = &HDB 'Used for miscellaneous characters; it can vary by keyboard. Windows 2000/XP: For the US standard keyboard, the '[{' key
VK_OEM_5 = &HDC 'Used for miscellaneous characters; it can vary by keyboard. Windows 2000/XP: For the US standard keyboard, the '\|' key
VK_OEM_6 = &HDD 'Used for miscellaneous characters; it can vary by keyboard Windows 2000/XP: For the US standard keyboard, the ']}' key
VK_OEM_7 = &HDE ' Used for miscellaneous characters; it can vary by keyboard. Windows 2000/XP: For the US standard keyboard, the 'single-quote/double-quote' key
   VK_OEM_8 = &HDF 'Used for miscellaneous characters; it can vary by keyboard.   E0 Reserved
'- E1 OEM specific
VK_OEM_102 = &HE2 'Windows 2000/XP: Either the angle bracket key or the backslash key on the RT 102-key keyboard
' E3E4 OEM specific
VK_PROCESSKEY = &HE5 'Windows 95/98/Me, Windows NT 4.0, Windows 2000/XP: IME PROCESS key
' E6 OEM specific
VK_PACKET = &HE7 'Windows 2000/XP: Used to pass Unicode characters as if they were keystrokes. The VK_PACKET key is the low word of a 32-bit Virtual Key value used for non-keyboard input methods. For more information, see Remark in KEYBDINPUT, SendInput, WM_KEYDOWN, and WM_KEYUP
'  E8 Unassigned
' E9F5 OEM specific
   VK_ATTN = &HF6 'Attn key
   VK_CRSEL = &HF7 'CrSel key
   VK_EXSEL = &HF8 'ExSel key
   VK_EREOF = &HF9 'Erase EOF key
   VK_PLAY = &HFA 'Play key
   VK_ZOOM = &HFB 'Zoom key
   VK_NONAME = &HFC 'Reserved for future use
   VK_PA1 = &HFD 'PA1 key
   VK_OEM_CLEAR = &HFE 'Clear key
End Enum
 
Private m_colKeyMap As New Collection
 
Private Declare Sub keybd_event Lib "user32" ( _
   ByVal bVk As Byte, ByVal bScan As Byte, _
   ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Private Const KEYEVENTF_EXTENDEDKEY = &H1
Private Const KEYEVENTF_KEYUP = &H2
 
Private Declare Function GetVersion Lib "kernel32" () As Long
Private Declare Function VkKeyScan Lib "user32" Alias "VkKeyScanA" ( _
   ByVal cChar As Byte) As Integer
Private Declare Function VkKeyScanW Lib "user32" ( _
   ByVal cChar As Integer) As Integer
 
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" ( _
    lpvDest As Any, lpvSource As Any, ByVal cbCopy As Long)
 
Public Function KeyCode(ByVal sChar As String) As KeyCodeConstants
10     On Error GoTo PROC_ERR
       Dim bNt As Boolean
       Dim iKeyCode As Integer
       Dim b() As Byte
       Dim iKey As Integer
       Dim vKey As KeyCodeConstants
       Dim iShift As ShiftConstants
       
       ' Determine if we have Unicode support or not:
20     bNt = ((GetVersion() And &H80000000) = 0)
       ' Get the keyboard scan code for the character:
30     If (bNt) Then
40        b = sChar
50        CopyMemory iKey, b(0), 2
60        iKeyCode = VkKeyScanW(iKey)
70     Else
80        b = StrConv(sChar, vbFromUnicode)
90        iKeyCode = VkKeyScan(b(0))
100    End If
110    KeyCode = (iKeyCode And &HFF&)
PROC_EXIT:
120    Exit Function
PROC_ERR:
130    ERR.Raise ERR.Number
 
End Function
 
Public Sub KeyDown(ByVal vKey As KeyCodeConstants)
10         On Error GoTo PROC_ERR
20         keybd_event vKey, 0, KEYEVENTF_EXTENDEDKEY, 0
PROC_EXIT:
30         Exit Sub
PROC_ERR:
40         ERR.Raise ERR.Number
 
End Sub
 
Public Sub KeyPress(ByVal sKey As String, Optional ByVal lCount = 1)
       Dim vKey As KeyCodeConstants
       Dim l As Long
10     On Error Resume Next
20     vKey = m_colKeyMap(sKey)
30     On Error GoTo 0
 
40     If (vKey = 0) Then
          ' translate string into v key code
50        vKey = KeyCode(sKey)
60     End If
70     If (vKey <> 0) Then
80        For l = 1 To lCount
90           KeyDown vKey
100          KeyUp vKey
110       Next l
120    Else
130       ERR.Raise 9, , "Key " & sKey & " could not be interpreted."
140    End If
 
End Sub
 
Public Sub KeyUp(ByVal vKey As KeyCodeConstants)
10         On Error GoTo PROC_ERR
20         keybd_event vKey, 0, KEYEVENTF_EXTENDEDKEY Or KEYEVENTF_KEYUP, 0
PROC_EXIT:
30         Exit Sub
PROC_ERR:
40         ERR.Raise ERR.Number
 
End Sub
 
Public Sub SendKeys(ByVal sKeys As String, Optional ByVal Wait As Boolean)
        ' The plus sign (+), caret (^), percent sign (%),
        ' tilde (~), and parentheses ( ) have special
        ' meanings to SendKeys
        ' Brackets ([ ]) have no special meaning to SendKeys,
        ' but you must enclose them in braces.
        ' To specify brace characters, use {{} and {}}.
     ' Repeating keys: {LEFT 42} do left 42 times.
 
        ' + = Shift
        ' ^ = Ctrl
        ' % = Alt
        ' ~ = enter
        ' ( = start sub expression. +(EC) = Shift then E then C
 
10    On Error GoTo errorHandler
 
        Dim sMsg As String
        Dim lErr As Long
        Dim iPos As Long
        Dim iNextPos As Long
        Dim iLen As Long
        Dim sChar As String
        Dim colBrace As New Collection
        Dim sContent As String
        Dim sKey As String
        Dim sCount As String
        Dim lCount As Long
 
20      iPos = 1
30      iLen = Len(sKeys)
40      Do While iPos <= iLen
 
50         sChar = Mid$(sKeys, iPos, 1)
60         Select Case sChar
           Case "+", "~", "%"
70            If nextChar(sKeys, iPos, iLen) = "(" Then
     ' Add to brace stack:
80               colBrace.Add sChar
                 ' send key down
90               Select Case sChar
                 Case "+"
100                 KeyDown vbKeyShift
110              Case "~"
120                 KeyDown vbKeyControl
130              Case "%"
140                 KeyDown vbKeyMenu
150              End Select
160              iPos = iPos + 2
170           Else
                 ' Key press the key (probably not what you wanted)
180              Select Case sChar
                 Case "+"
190                 KeyDown vbKeyShift
200                 KeyUp vbKeyShift
210              Case "~"
220                 KeyDown vbKeyControl
230                 KeyUp vbKeyControl
240              Case "%"
250                 KeyDown vbKeyMenu
260                 KeyUp vbKeyMenu
270              End Select
280              iPos = iPos + 1
290           End If
 
300        Case "~"
     ' Enter key:
310           KeyDown vbKeyReturn
320           KeyUp vbKeyReturn
330           iPos = iPos + 1
 
340        Case ")"
350           If (colBrace.count > 0) Then
360              sChar = colBrace(colBrace.count)
                 ' send key up
370              Select Case sChar
                 Case "+"
380                 KeyUp vbKeyShift
390              Case "~"
400                 KeyUp vbKeyControl
410              Case "%"
420                 KeyUp vbKeyMenu
430              End Select
440              colBrace.Remove colBrace.count
450              iPos = iPos + 1
460           Else
     ' Invalid sendkeys command:
470   sMsg = "Invalid sendkeys command: unmatched ) at position " & iPos
480              GoTo errorHandler
490           End If
 
500        Case "{"
              ' special key
510           If (iPos + 2 > iLen) Then
520              sMsg = "Invalid sendkeys command; opening { without content or closing } at position " & iPos
530              GoTo errorHandler
540           Else
550              iNextPos = InStr(iPos + 2, sKeys, "}")
560              If (iNextPos = 0) Then
570                 sMsg = "Invalid sendkeys command; opening { without closing } at position " & iPos
580                 GoTo errorHandler
590              Else
600                 sContent = Mid$(sKeys, iPos + 1, iNextPos - iPos - 1)
610                 iPos = iNextPos + 1
                    ' is this a key/presses pair?
620                 iNextPos = InStr(sContent, " ")
630                 If (iNextPos > 0) Then
640                    sKey = Left$(sContent, iNextPos - 1)
650                    sCount = Mid$(sContent, iNextPos + 1)
660                    If Not (IsNumeric(sCount)) Then
670                       sMsg = "Invalid sendkeys command; key repetitions '" & sCount & "' is invalid near position " & iPos
680                       lCount = CLng(sCount)
690                    End If
700                 Else
710                    sKey = sContent
720                    lCount = 1
730                 End If
740                 KeyPress sKey, lCount
 
750              End If
760           End If
 
770        Case Else
              ' send the key as is
780           KeyPress sChar, 1
790           iPos = iPos + 1
 
800        End Select
 
810     Loop
 
820     If (colBrace.count > 0) Then
830   sMsg = "Invalid sendkeys command: more open brackets than close brackets."
840        GoTo errorHandler
850     End If
 
860     Exit Sub
 
errorHandler:
870     If Len(sMsg) = 0 Then
880        sMsg = ERR.Description
890        lErr = ERR.Number
900     End If
 
        ' If we don't clear up the shift/control/alt keys,
        ' then you might find other apps on the system are hard to
        ' use.
        ' Make sure you have Break on Unhandled Errors switched
        ' on.
910     Do While colBrace.count > 0
920        sChar = colBrace(colBrace.count)
           ' send key up
930        Select Case sChar
           Case "+"
940           KeyUp vbKeyShift
950        Case "~"
960           KeyUp vbKeyControl
970        Case "%"
980           KeyUp vbKeyMenu
990        End Select
1000       colBrace.Remove colBrace.count
1010    Loop
 
1020    On Error GoTo 0
1030    ERR.Raise lErr, App.EXEName & ".cSendKeys", sMsg
 
1040    Exit Sub
 
End Sub
 
Private Sub Class_Initialize()
10        On Error GoTo PROC_ERR
20      m_colKeyMap.Add vbKeyBack, "BACKSPACE"
30      m_colKeyMap.Add vbKeyBack, "BS"
40      m_colKeyMap.Add vbKeyBack, "BKSP"
50      m_colKeyMap.Add vbKeyPause, "BREAK"
60      m_colKeyMap.Add vbKeyCapital, "CAPSLOCK"
70      m_colKeyMap.Add vbKeyDelete, "DELETE"
80      m_colKeyMap.Add vbKeyDelete, "DEL"
90      m_colKeyMap.Add vbKeyDown, "DOWN"
100     m_colKeyMap.Add vbKeyEnd, "END"
110     m_colKeyMap.Add vbKeyReturn, "ENTER"
120     m_colKeyMap.Add vbKeyReturn, "~"
130     m_colKeyMap.Add vbKeyEscape, "ESC"
140     m_colKeyMap.Add vbKeyHelp, "HELP"
150     m_colKeyMap.Add vbKeyHome, "HOME"
160     m_colKeyMap.Add vbKeyInsert, "INS"
170     m_colKeyMap.Add vbKeyInsert, "INSERT"
180     m_colKeyMap.Add vbKeyLeft, "LEFT"
190     m_colKeyMap.Add vbKeyNumlock, "NUMLOCK"
200     m_colKeyMap.Add vbKeyPageDown, "PGDN"
210     m_colKeyMap.Add vbKeyPageUp, "PGUP"
220     m_colKeyMap.Add vbKeyPrint, "PRTSC"
230     m_colKeyMap.Add vbKeyRight, "RIGHT"
240     m_colKeyMap.Add vbKeyScrollLock, "SCROLLLOCK"
250     m_colKeyMap.Add vbKeyTab, "TAB"
260     m_colKeyMap.Add vbKeyUp, "UP"
270     m_colKeyMap.Add vbKeyF1, "F1"
280     m_colKeyMap.Add vbKeyF2, "F2"
290     m_colKeyMap.Add vbKeyF3, "F3"
300     m_colKeyMap.Add vbKeyF4, "F4"
310     m_colKeyMap.Add vbKeyF5, "F5"
320     m_colKeyMap.Add vbKeyF6, "F6"
330     m_colKeyMap.Add vbKeyF7, "F7"
340     m_colKeyMap.Add vbKeyF8, "F8"
350     m_colKeyMap.Add vbKeyF9, "F9"
360     m_colKeyMap.Add vbKeyF10, "F10"
370     m_colKeyMap.Add vbKeyF11, "F11"
380     m_colKeyMap.Add vbKeyF12, "F12"
390     m_colKeyMap.Add vbKeyF13, "F13"
400     m_colKeyMap.Add vbKeyF14, "F14"
410     m_colKeyMap.Add vbKeyF15, "F15"
420     m_colKeyMap.Add vbKeyF16, "F16"
PROC_EXIT:
430       Exit Sub
PROC_ERR:
440       ERR.Raise ERR.Number
 
End Sub
 
Private Function nextChar(ByRef sString As String, ByVal iPos As Long, Optional ByVal lLen As Long = 0) As String
10      On Error GoTo PROC_ERR
20      If (lLen = 0) Then lLen = Len(sString)
30      If (iPos + 1 <= lLen) Then
40         nextChar = Mid$(sString, iPos + 1, 1)
50      End If
PROC_EXIT:
60      Exit Function
PROC_ERR:
70        ERR.Raise ERR.Number
 
End Function
                                              
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
152:
153:
154:
155:
156:
157:
158:
159:
160:
161:
162:
163:
164:
165:
166:
167:
168:
169:
170:
171:
172:
173:
174:
175:
176:
177:
178:
179:
180:
181:
182:
183:
184:
185:
186:
187:
188:
189:
190:
191:
192:
193:
194:
195:
196:
197:
198:
199:
200:
201:
202:
203:
204:
205:
206:
207:
208:
209:
210:
211:
212:
213:
214:
215:
216:
217:
218:
219:
220:
221:
222:
223:
224:
225:
226:
227:
228:
229:
230:
231:
232:
233:
234:
235:
236:
237:
238:
239:
240:
241:
242:
243:
244:
245:
246:
247:
248:
249:
250:
251:
252:
253:
254:
255:
256:
257:
258:
259:
260:
261:
262:
263:
264:
265:
266:
267:
268:
269:
270:
271:
272:
273:
274:
275:
276:
277:
278:
279:
280:
281:
282:
283:
284:
285:
286:
287:
288:
289:
290:
291:
292:
293:
294:
295:
296:
297:
298:
299:
300:
301:
302:
303:
304:
305:
306:
307:
308:
309:
310:
311:
312:
313:
314:
315:
316:
317:
318:
319:
320:
321:
322:
323:
324:
325:
326:
327:
328:
329:
330:
331:
332:
333:
334:
335:
336:
337:
338:
339:
340:
341:
342:
343:
344:
345:
346:
347:
348:
349:
350:
351:
352:
353:
354:
355:
356:
357:
358:
359:
360:
361:
362:
363:
364:
365:
366:
367:
368:
369:
370:
371:
372:
373:
374:
375:
376:
377:
378:
379:
380:
381:

Select allOpen in new window

20120131-EE-VQP-002

3 Ways to Join

30-Day Free Trial

The Experts

98% positive feedback on 31,087 answers since March 2000. angeliii is a Microsoft Most Valuable Professional for his work with MS SQL Server & Develoment.

He has also proven his knowledge of Visual Basic Programming, PHP Scripting and Oracle Databases.

The Experts

97% positive feedback on 10,752 answers since July 2000. lrmoore has more than 18 years experience in the networking industry.

The six-time Mircosoft MVPs specialties include firewalls, virtual private networking, and network management.

Testimonials

"...and excellent source for support... Kind of like having your very own IT dept." Electriciansnet

Testimonials

"I was apprehensive at signing up at first. However... it has already made my life as an IT administrator much easier." JaCrews

Testimonials

"WOW! You guys have great, active, and knowledgeable people on here." moore50

Business Clients

Business Clients

In the Press

"If you’ve got a question... Experts Exchange can supply an answer.”

In the Press

"...an invaluable aid for both IT professionals and those who require tech support."

In the Press

"where IT professionals provide quick answers on just about any topic"

Business Account Plans

Loading Advertisement...