กระทู้เก่าบอร์ด อ.Yeadram
        
           1,662   8		  
          
					  
		    URL.หัวข้อ / 
		    URL
        
        จะเขียนโค้ดให้ตรวจสอบว่า มีไดร์ฟ D หรือไม่      
    
      คือว่า หนูอยากหาวิธีตรวจสอบว่า ในเครื่องนั้น มี HDD ไดร์ฟ D: อยู่หรือไม่
หาก ไม่มี ก็ให้เป็น Then ค่ะ
แล้วหากไปตรวจเจอ CD-Rom ที่เป็นไดร์ฟ D: จะทำให้เห็นแตกต่างกันอย่างไรคะ
    
  หาก ไม่มี ก็ให้เป็น Then ค่ะ
แล้วหากไปตรวจเจอ CD-Rom ที่เป็นไดร์ฟ D: จะทำให้เห็นแตกต่างกันอย่างไรคะ
				8 Reply in this Topic. Dispaly 1  pages and you are on page number 1 
				
        
    2 @R11480    
        
  
      sub chDrive 
ผมรีบไปหน่อย อิอิ
ผมประกาศตัวแปร integer โดย X
แต่เวลาเอาไปเขียนในลูป กลับอ้างเป็นตัวแปร I (ไอ)
เอาเป็นว่าขอให้เข้าใจว่ามันคือตัวเดียวกันนะครับ ผมไม่อยากแก้ไขโพสต์ เพราะถ้าแก้ไข ตัวหนังสือจะจัดระเบียบใหม่ จะอ่านยากครับ
    
  ผมรีบไปหน่อย อิอิ
ผมประกาศตัวแปร integer โดย X
แต่เวลาเอาไปเขียนในลูป กลับอ้างเป็นตัวแปร I (ไอ)
เอาเป็นว่าขอให้เข้าใจว่ามันคือตัวเดียวกันนะครับ ผมไม่อยากแก้ไขโพสต์ เพราะถ้าแก้ไข ตัวหนังสือจะจัดระเบียบใหม่ จะอ่านยากครับ
        
    3 @R11481    
        
  
      ขอบคุณค่ะอาจารย์
หนูจะลองเอาไปทำดูนะคะ ติดขัดประการใด จะขอรบกวนเพิ่มเติมอีกนะคะ
ขอบคุณค่ะ
    
  หนูจะลองเอาไปทำดูนะคะ ติดขัดประการใด จะขอรบกวนเพิ่มเติมอีกนะคะ
ขอบคุณค่ะ
        
    4 @R11482    
        
  
      พยายามศึกษาทำความเข้าใจแล้ว แต่ไปไม่รอด ไปต่อไม่ถูกค่ะอาจารย์
หนูไม่ทราบวิธีนำไปใช้ แล้วก็ ไม่ทราบว่าบรรทัดที่ใช้ตรวจสอบการมีอยู่ของไดร์ฟ D:\ หรือไม่ ว่าอยู่บรรทัดไหนค่ะ
ขอความกรุณาอาจารย์ ช่วยขยายความเพิ่มเติมให้อีกนิดนะคะ
ขอบคุณค่ะ
    
  หนูไม่ทราบวิธีนำไปใช้ แล้วก็ ไม่ทราบว่าบรรทัดที่ใช้ตรวจสอบการมีอยู่ของไดร์ฟ D:\ หรือไม่ ว่าอยู่บรรทัดไหนค่ะ
ขอความกรุณาอาจารย์ ช่วยขยายความเพิ่มเติมให้อีกนิดนะคะ
ขอบคุณค่ะ
        
    5 @R11483    
        
  
      Sub chDrive() 
Dim Y As Long
Dim X As Integer
For X = 0 To 25
Y = GetDriveType(Chr(X + 65) & ":\")
Debug.Print Chr(X + 65) & ":\ = " & DrType(Y) & vbTab & Y
Next
End Sub
Y = GetDriveType(Chr(X + 65) & ":\")
หรือ Y = GetDriveType("D:\")
ถ้า Y คืนค่าออกมาเป็น 1 หมายความว่า ในเครื่องนี้ ไม่มี Drive D:
ถ้า Y คืนค่าออกมาเป็นอย่างอื่น แล้วอยากรู้ว่า เป็น Drive ชนิดไหน
ให้ส่ง Y เข้าไปเช็คในฟังก์ชั่น drType ต่อไปก็จะได้
ชนิดไดรฟว์ของ Y = drType(Y)
    
  Dim Y As Long
Dim X As Integer
For X = 0 To 25
Y = GetDriveType(Chr(X + 65) & ":\")
Debug.Print Chr(X + 65) & ":\ = " & DrType(Y) & vbTab & Y
Next
End Sub
Y = GetDriveType(Chr(X + 65) & ":\")
หรือ Y = GetDriveType("D:\")
ถ้า Y คืนค่าออกมาเป็น 1 หมายความว่า ในเครื่องนี้ ไม่มี Drive D:
ถ้า Y คืนค่าออกมาเป็นอย่างอื่น แล้วอยากรู้ว่า เป็น Drive ชนิดไหน
ให้ส่ง Y เข้าไปเช็คในฟังก์ชั่น drType ต่อไปก็จะได้
ชนิดไดรฟว์ของ Y = drType(Y)
        
    6 @R11484    
        
  
      อ๋อ..พอเห็นแนวทางประยุกต์แล้วค่ะอาจารย์
เดี๋ยวหนูจะลองไปทำดูนะคะ
ขอบคุณค่ะ
    
  เดี๋ยวหนูจะลองไปทำดูนะคะ
ขอบคุณค่ะ
        
    7 @R11485    
        
  
      อยู่แถวไหนครับเนี่ย น้ำไม่ท่วมเหรอ ยังเข้าเว็บบอร์ดได้อีกนะเนี่ย
ขยันทำงานจริงนะ
    
  ขยันทำงานจริงนะ
        
    8 @R11486    
        
    
      แถวบ้านหนู น้ำท่วมนิดหน่อยค่ะอาจารย์..
ยังคงทำงานได้ปกติค่ะ
    
  ยังคงทำงานได้ปกติค่ะ
      Time: 0.0685s
    
      
		
Public Declare Function GetDriveType Lib "kernel32" Alias "GetDriveTypeA" (ByVal nDrive As String) As Long
Public Const DRIVE_REMOVABLE = 2
Public Const DRIVE_FIXED = 3
Public Const DRIVE_REMOTE = 4
Public Const DRIVE_CDROM = 5
' ----------------------------------------------------------------------
Sub chDrive()
Dim Y As Long
Dim X As Integer
For I = 0 To 25
Y = GetDriveType(Chr(I + 65) & ":\")
Debug.Print Chr(I + 65) & ":\ = " & DrType(Y) & vbTab & Y
Next
End Sub
Function DrType(dr As Long) As String
Select Case dr
Case DRIVE_REMOVABLE
DrType = "ฟลอบปี้ดิสก์"
Case DRIVE_FIXED
DrType = "ฮาร์ดดิสก์"
Case DRIVE_REMOTE
DrType = "เน็ตเวิร์คไดรว์"
Case DRIVE_CDROM
DrType = "ซีดีรอม"
Case DRIVE_RAMDISK
DrType = "แรมดิสก์"
End Select
End Function