yeah psy is right...
well here the code
you can delete some parts and clean it up and make the picbox invisible...
next time try to be little more polite... look at the other posts and you wont find a lot of F*** and *** there...
I keep the bad programming habit given by your sample code..
VB Code:
  1. Private Declare Function GetDC Lib "user32" (ByVal hwnd As Long) As Long
  2. Private Declare Function StretchBlt Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal nSrcWidth As Long, ByVal nSrcHeight As Long, ByVal dwRop As Long) As Long
  3. Private Declare Function GetWindowDC Lib "user32" (ByVal hwnd As Long) As Long
  4.  
  5. Private Declare Function BitBlt Lib "gdi32" (ByVal hDestDC As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long
  6.  
  7.  
  8. Private Sub Command1_Click()
  9. Dim wScreen As Long
  10. Dim hScreen As Long
  11. Dim w As Long
  12. Dim h As Long
  13. Picture1.Cls
  14.  
  15. wScreen = Screen.Width \ Screen.TwipsPerPixelX
  16. hScreen = Screen.Height \ Screen.TwipsPerPixelY
  17.  
  18. Picture1.ScaleMode = vbPixels
  19. Picture1.AutoRedraw = True
  20. w = Screen.Width / Screen.TwipsPerPixelX
  21. h = Screen.Height / Screen.TwipsPerPixelY
  22.  
  23. hdcScreen = GetDC(0)
  24. 'hdcScreen = GetWindowDC(0)
  25.  
  26.  'StretchBlt Picture1.hdc, 0, 0, w, h, hdcScreen, 0, 0, w, h, &HCC0020
  27.    Form1.ScaleMode = vbPixels
  28.    Picture1.Width = w
  29.   Picture1.Height = h
  30.  
  31.  BitBlt Picture1.hdc, 0, 0, w, h, hdcScreen, 0, 0, &HCC0020
  32.  
  33. SavePicture Picture1.Image, "C:\yourfile.bmp"
  34. End Sub