الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كتابة سواقة السى دى داخل تكست

بدأه olobnet في 15 مايو 2008 · 1 رد · 724 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

اريد كود الغرض منه كتابة سواقة الاقراص السى دى داخل تكست اى يكتب داخل التكست (dاوeاوfأوg.....الخ) مشكورين مقدما

#2

السلام عليكم...

إذا كنت تريد الحصول على حروف محركات الأقراص المدمجة (السي دي درايف) فإليك الكود التالي:

1. أضف إلى النموذج (Form) زر أمر (Command) و خانة لائحة (ListBox).

2. أضف الكود التالي:

Option Explicit

' Windows API function declarations:
Private Declare Function GetDriveType Lib "kernel32" Alias "GetDriveTypeA" (ByVal nDrive As String) As Long
Private Declare Function GetLogicalDriveStrings Lib "kernel32" Alias "GetLogicalDriveStringsA" (ByVal nBufferLength As Long, ByVal lpBuffer As String) As Long

Const DRIVE_CDROM& = 5

' دالة للحصول على سلسلة نصية تحتوي على حروف جميع محركات الأقراص. السلسلة تكون في الشكل التالي:
' c:\<null>d:\<null>e:\<null>f:\<null><null>
Public Function GetDriveStrings() As String
	Dim Result As Long		  ' Result of our API calls
	Dim DrivesList As String	 ' String to pass to API call
	Dim DrivesListLen As Long	' Length of the above string

	' Call GetLogicalDriveStrings with a buffer size of zero to
	' find out how large string buffer needs to be:
	Result = GetLogicalDriveStrings(0, DrivesList)

	DrivesList = String(Result, 0)
	DrivesListLen = Result

	' Call again with our new buffer
	Result = GetLogicalDriveStrings(DrivesListLen, DrivesList)
	If Result = 0 Then
		GetDriveStrings = ""
	Else
		GetDriveStrings = DrivesList
	End If
End Function

Private Sub Command1_Click()
	Dim DrivesList As String
	Dim APos As Long
	Dim ADrive As String
	Dim ADrivetype As Long

	List1.Clear
	DrivesList = GetDriveStrings()
	If DrivesList = "" Then
		MsgBox "لا توجد محركات أقراص في هذا الحاسوب", vbCritical
	Else
		' البحث في سلسلة رموز محركات الأقراص عن محركات الأقراص المدمجة.
		' ListBox قد يحتوي الحاسوب على أكثر من محرك أقراص مدمجة واحد و لهذا استعملنا.
		APos = 1
		Do While Not Mid$(DrivesList, APos, 1) = Chr(0)
			ADrive = Mid$(DrivesList, APos, 3)
			ADrivetype = GetDriveType(ADrive)
			If ADrivetype = DRIVE_CDROM& Then
				List1.AddItem UCase(ADrive)
			End If
			APos = APos + 4
		Loop
	End If
End Sub

وَ قُلِ اعْمَلُوا فَسَيَرَى اللهُ عَمَلَكُمْ وَ رَسُولُهُ وَ الْمُؤْمِنُونَ

صدق الله العظيم

مواضيع مشابهة