Dosya ve Klasör Arama

Visual Basic & Action script Dosya ve Klasör Arama Programlama hakkında bilgi paylaş; Dosya ve Klasör Arama Belirlediginiz nitelikteki dosya ve klasörleri listeler Kod: Option Explicit Dim m_wCurOptIdx As Integer Private ...
Cevapla
 
Seçenekler
  #1  
Arama 24-12-2007, 11:23
Celebrian - ait Kullanıcı Resmi (Avatar)

Üyelik Tarihi: 19/11/07
Mesajlar: 3.307
 
     WS-Ticareti: (0)
Teşekkürleri: 0
31 Msg. 38 Tşkr.
Rep Gücü: 36 Celebrian rep gücü yükselmeye başladı

Dosya ve Klasör Arama

Dosya ve Klasör Arama Belirlediginiz nitelikteki dosya ve klasörleri listeler


Kod:
Option Explicit

Dim m_wCurOptIdx As Integer


Private Sub Form_Load()

Dim wIdx As Integer, nFolder As Long
Dim sPath As String * MAX_PATH ' 260
Dim IDL As ITEMIDLIST

Move (Screen.Width - Width) * 0.5, (Screen.Height - Height) * 0.5
pic16Icon.AutoRedraw = True ' this is a demo...
pic32Icon.AutoRedraw = True

' Loads the labels with the respective
' system folder's path (if found)
For wIdx = 1 To 17
nFolder = GetFolderValue(wIdx)

' Fill the item id list with the pointer of each folder item, rtns 0 on success
If SHGetSpecialFolder********(Me.hWnd, nFolder, IDL) = NOERROR Then

' Get the path from the item id list pointer, rtns True on success
If SHGetPathFromIDList(ByVal IDL.mkid.cb, ByVal sPath) Then

' Display the path in the respective label
labFolderPath(wIdx) = Left$(sPath, InStr(sPath, vbNullChar) - 1)

End If

Else
' The folder item doesn't exist, disable it's checkbox
optFolder(wIdx).Enabled = False

End If
Next

End Sub

Private Function GetFolderValue(wIdx As Integer) As Long
' Returns the value of the system folder constant specified by wIdx
' See BrowsDlg.bas for the system folder nFolder values

' The Desktop
If wIdx < 2 Then
GetFolderValue = 0

' Programs Folder --> Start Menu Folder
ElseIf wIdx < 12 Then
GetFolderValue = wIdx

' Desktop Folder --> ShellNew Folder
Else ' wIdx >= 12
GetFolderValue = wIdx + 4
End If

End Function

Private Sub optFolder_Click(Index As Integer)
' Save the current option button index
m_wCurOptIdx = Index
End Sub

Private Function GetReturnType() As Long
Dim dwRtn As Long
If chkRtnType(0) Then dwRtn = dwRtn Or BIF_RETURNONLYFSDIRS
If chkRtnType(1) Then dwRtn = dwRtn Or BIF_DONTGOBELOWDOMAIN
' If chkRtnType(2) Then dwRtn = dwRtn Or BIF_STATUSTEXT ' callback only
If chkRtnType(3) Then dwRtn = dwRtn Or BIF_RETURNFSANCESTORS
If chkRtnType(4) Then dwRtn = dwRtn Or BIF_BROWSEFORCOMPUTER
If chkRtnType(5) Then dwRtn = dwRtn Or BIF_BROWSEFORPRINTER
GetReturnType = dwRtn
End Function

Private Sub cmdBrowse_Click()

Dim BI As BROWSEINFO
Dim nFolder As Long
Dim IDL As ITEMIDLIST
Dim pIdl As Long
Dim sPath As String
Dim SHFI As SHFILEINFO

With BI
' The dialog's owner window...
.hOwner = Me.hWnd

' Set the Browse dialog root folder
nFolder = GetFolderValue(m_wCurOptIdx)

' Fill the item id list with the pointer of the selected folder item, rtns 0 on success
' ==================================================
' If this function fails because the selected folder doesn't exist,
' .pidlRoot will be uninitialized & will equal 0 (CSIDL_DESKTOP)
' and the root will be the Desktop.
' DO NOT specify the CSIDL_ constants for .pidlRoot !!!!
' The SHBrowseForFolder() call below will generate a fatal exception
' (GPF) if the folder indicated by the CSIDL_ constant does not exist!!
' ==================================================
If SHGetSpecialFolder********(ByVal Me.hWnd, ByVal nFolder, IDL) = NOERROR Then
.pidlRoot = IDL.mkid.cb
End If

' Initialize the buffer that rtns the display name of the selected folder
.pszDisplayName = String$(MAX_PATH, 0)

' Set the dialog's banner text
.lpszTitle = "Browsing is limited to: " & optFolder(m_wCurOptIdx).Caption

' Set the type of folders to display & return
' -play with these option constants to see what can be returned
.ulFlags = GetReturnType()

End With

' Clear previous return vals before the
' dialog is shown (it might be cancelled)
txtPath = ""
txtDisplayName = ""
pic16Icon.Picture = LoadPicture() ' clears prev icon
pic32Icon.Picture = LoadPicture()

' Show the Browse dialog
pIdl = SHBrowseForFolder(BI)

' If the dialog was cancelled...
If pIdl = 0 Then Exit Sub

' Fill sPath w/ the selected path from the id list
' (will rtn False if the id list can't be converted)
sPath = String$(MAX_PATH, 0)
SHGetPathFromIDList ByVal pIdl, ByVal sPath

' Display the path and the name of the selected folder
txtPath = Left(sPath, InStr(sPath, vbNullChar) - 1)
txtDisplayName = Left$(BI.pszDisplayName, _
InStr(BI.pszDisplayName, vbNullChar) - 1)

' Get the 16x16 icon info from the id list using the pidl
SHGetFileInfo ByVal pIdl, 0&, SHFI, Len(SHFI), _
SHGFI_PIDL Or SHGFI_ICON Or SHGFI_SMALLICON
' The 16x16 icon handle rtnd in SHFI.hIcon is stretched to 32x32.
' DrawIconEx() will shrink (or stretch) the icon per it's cxWidth & cyWidth params
DrawIconEx pic16Icon.hdc, 0, 0, SHFI.hIcon, 16, 16, 0, 0, DI_NORMAL
pic16Icon.Refresh

' Get the 32x32 icon info from the id list
SHGetFileInfo ByVal pIdl, 0&, SHFI, Len(SHFI), _
SHGFI_PIDL Or SHGFI_ICON
' SHFI.hIcon is OK here so DrawIcon() can be used
DrawIcon pic32Icon.hdc, 0, 0, SHFI.hIcon
pic32Icon.Refresh

' Frees the memory SHBrowseForFolder()
' allocated for the pointer to the item id list
CoTaskMemFree pIdl

End Sub

Private Sub cmdInfo_Click()
MsgBox "If a root folder Option Button has no correspnoding folder ******** " & _
"displayed, then no Registry entry exists for it under:" & vbCrLf & vbCrLf & _
"HKEY_CURRENT_USER\Software\Microsoft\Windows\Curr entVersion\Explorer\Shell Folders" & _
vbCrLf & vbCrLf & "As well, if a root folder Option Button is disabled, the folder " & _
"does not exist in your file system and cannot be dispalyed as the root in the Browse dialog."
End Sub

Private Sub cmdQuit_Click()
Unload Me
End Sub

Private Sub Form_Unload(Cancel As Integer)
Set Form1 = Nothing
End
End Sub


__________________
Alıntı ile Cevapla
Cevapla
Arama Etiketleri: , ,



Seçenekler


Benzer Konular
Konu Konu Açanlar Forum Cevaplar Güncel Mesajlar
Klasör oluşturmak Celebrian Visual Basic & Action script 2 23-06-2008 02:24
www.dosyaara.net DosyaAra.net İnternette Dosya Arama Motoru, %100 Türk Arama Motoru mukoonline Diğer Web Siteleri 2 27-05-2008 07:50
cgi-perl Dosya işlemleri (Dosya erişim yetkileri, dosya açma, okuma, yazma ve kapatma W-S Perl-Cgi 0 13-03-2008 12:54
Visual Basic.Net - Dosya ve Klasör Fonksiyon Türleri kadınca Visual Basic & Action script 0 18-12-2007 08:21
Dosya ve Klasör Listeleme egitimbilgisi Asp kodları 0 26-11-2007 05:15

Webmaster Sitesine Reklam Verin

Webmaster web tasarım online reviews ~ Kadınlar blogu ~ Apple iPhone, iPod Touch ( iTouch ) Forum ~ iPhone