Arc Hi Eve Maker

  • Uploaded by: MANOJ
  • 0
  • 0
  • May 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Arc Hi Eve Maker as PDF for free.

More details

  • Words: 1,442
  • Pages: 12
വിഷ േബസി ില െട ആചീവ് െമയ് 

ആചീവക എേകകാവരായി ആം ഉ!ാവില " . ഒ %&ം ഫയലകെള ഒ)െക&ായി സ *ി+, വിദ. ് നമ ് ആചീെവ വിളി ാം. വളെര 0ശസ് തമായ ഒ ആചീവിങ് േസാഫ " ാ ‘വി8സി9് ’. ഫയലകെള ഇ<െന ഒ)ഫയലാ ി 4 ് െവയറാണേല ഉപേയാഗി ാനായാ ഫയ ?ാ8സാ*് 8സ് സ ഖമമായി നടാനാവം. വിഷ  േബയ് സി ് ഉപേയാഗിAെകാ!് എ<ിെന ഒ േഫാഡ ആചീവ് െചCാ8 സഹായി+, െ0ാEാം ഉ!ാ ാെമ േനാ ാം. ആദ.മായി വിഷ  േബയ് സി ് Fറ,് ഫയ ആചീവ് എ,േപരി ഒ േ0ാEാം Fട<ാം.േഫാമിേല ് താെഴ കാH,േപാെല ഒ െടക I ് )് േബാക I ് (textDir), മ  ബ&Hക(cmdOrdner,makeArchiv,cmdExtractArchiv),േകാേ^ാേബാക I ് (cmbPattern),പി ക് ചേബാക I ് (picProgress),ഒ േകാമe ഡയേലാഗകeേ?ാ എ,ിവ േഫാമിേല ് േച+ക.

വിേfാസി െപാFവായി ഉപേയാഗി െപട, ജാലക<ളാണ് േകാമe ഡയേലാഗ് എ,റിയെ9ട,ത് .ഉദാഹരണമായി, േഫാ!് ഡയേലാഗ് ,0ിf് ഡയേലാഗ് ,കള ഡയേലാഗ് എ,ിവ. േകാമe ഡയേലാഗ് കe േ?ാ വഴി ഇവ നhെട േ0ാജക 4 ിേല ് െകാ!വരാനാവം.േകാമe ഡയേലാഗ് േകാ^ണ8സ് വിേfായി നിം 4 ിനിം Microsoft Common Dialog Control 6 േചേ !F!് . േകാ^ണ8സ് ലിസ ടി ് െചയ് ത് ഒെക െചCക.(ട  േബാക " ി ് െചയ് ത് േകാ^ണ8സ് I ിെf ൈറ)് ബ&e ക

വിേfാ വാം അെല " pി Ctrl+T ഉപേയാഗി ാം) *േഫാം 0വി9ി+േ^ാ ഈ കeേ?ാ കാണാനാവില " .ഇനി ആചീവ് തCാറാ ാuv ഫങ് ഷuകളം യ സ ഡിൈഫ8ഡ് ൈട9കളം ഉ!ാ ാം. ഇെതാ െമാഡ. ളിലാണ് െചേC!ത് . 0ധാനെ9& േവരിയബിളകളെട ഉപേയാഗം വിശxീകരിAിരി+,ത് 0േത.കം yxി+ക. Private Const MAX_PATH = 260 Private Type BrowseInfo hWndOwner As Long pIDLRoot As Long ‘ആദ.െ േഫാഡറിെf സ‡ാനം െസ)് െചCാ8 pszDisplayName As Long ‘െസലക് ട് െചയ് ത് േഫാഡറിെf േപര് സ് േ)ാ െചC,തിന് . lpszTitle As Long

.

ulFlags As Long lpfnCallback As Long lParam As Long iImage As Long േഫാഡറിെf ഐ e കാണി+,തിന് . End Type

4 ം ൈട9ായ BrowseInfo േഫാഡ െൗസറിെf േകാeഫിഗേറഷuേവ!ിയാണ് കസ 4 f് ഫ ഉ!ാ െ9&ിvത് . ഇനി െൗസ് േഫാഡ ഫങ് ഷ് uേവ! മ) േകാeസ " ാകളം ഫങ് ഷuകളം ഡിക " യ െചCാം. 4 ം ഒബ് ജക 4 ം െന)് വ ിെല കം^. &റ ക,0ിfറ ക,ഫയ സിസ 4  ക,ഫയ സിസ 4 ാ)സ് ബാ എ,ി കാണി+,തിനാവശ.മായ ഫ േഫാഡറ ക,ഫയലക,സ " ാകളാണ് ആദ.മായി െസ)െചCാuvത് . Private Const BIF_BROWSEFORCOMPUTER = &H1000 Private Const BIF_BROWSEFORPRINTER = &H2000 Private Const BIF_BROWSEINCLUDEFILES = &H4000 Private Const BIF_DONTGOBELOWDOMAIN = &H2 Private Const BIF_RETURNFSANCESTORS = &H8 Private Const BIF_RETURNONLYFSDIRS = &H1 Private Const BIF_STATUSTEXT = &H4

ഇനി േഫാഡ െൗസ് െചCാuv ൈലറി ഫങ് ഷuകളം, െമhറി സ ത™മാ ാuv ഫങ് ഷuകളം േച് ഡിക " േറഷ8 പ ണ š മാ ാം. Private Declare Sub CoTaskMemFree Lib "ole32.dll" _ (ByVal hMem As Long) Private Declare Function lstrcat Lib "kernel32" Alias _ "lstrcatA" (ByVal lpString1 As String,ByVal lpString2 As String) As Long Private Declare Function GetActiveWindow Lib "user32" () As Long Private Declare Function SHGetPathFromIDList Lib "shell32"(ByVal pidList As Long, ByVal lpBuffer As String) As Long Private Declare Function SHBrowseForFolder Lib "shell32"(lpbi As BrowseInfo) As Long ഇനി െൗസ് േഫാഡ ഫങ് ഷെf േശഷി+, ഭാഗ< േച ാം. Public Function BrowseForFolder(Prompt As String) As String Dim n As Integer Dim IDList, Result ,As Long Dim ThePath As String Dim BI As BrowseInfo ഫയ സ് ?ക് ച ഉ!ാ+,തിനാണ് താെഴ കാH, േകാഡ് ഉപേയാഗിAിരി+,ത് . With BI .hWndOwner = GetActiveWindow() .lpszTitle = lstrcat(Prompt, "") .ulFlags = BIF_RETURNONLYFSDIRS End With IDList = SHBrowseForFolder(BI)

4 ് 0  അധികമാെണpി െസക് ട് െചയ് ത ഭാഗം എഡി)് െചC,തിനായി ഐഡി ലിസ താെഴ കാH, ഭാഗം ഉപേയാഗിAിരി+. If IDList Then െമhറിസ^Ÿി+, വിവര< ലഭി+,തിന് . ThePath = String$(MAX_PATH, 0)

Result = SHGetPathFromIDList(IDList, ThePath)

IID-List െന പാായി െസ)െചC,തിന് .

IDList  നിം െമhറി ¢ീ ആ+,തിന് . Call CoTaskMemFree(IDList) ‘എല " ാ ൈബ)കേളയ ം പ ണ š മായ ം നീ ം െചCാ8 n = InStr(ThePath, vbNullChar) If n Then ThePath = Left$(ThePath, n - 1) End If BrowseForFolder = ThePath End Function

േഫാഡ െൗസ് െചCാuv ഫങ് ഷെf ഭാഗം ഇവിെട പ രണ š മാ£.ഇനി േഫാമിേല ് േശഷി+, ഭാഗം %ടി േച ാവ,താണ് .േഫാമിെf േലാഡ് ഇവfിേല ് താെഴ കാH,േകാഡ് േച ാം. Private Sub Form_Load() cmbPattern.AddItem "*.*" cmbPattern.ListIndex = 0 End Sub ഇനി cmdOrdner െf ക " ി ് ഇവ് fി നിം േഫാഡ െസലക 4 ് െചCാനായി ഉ!ാ ിയ BrowseForFolder ഫങ് ഷെന വിളി ാം Private Sub cmdOrdner_Click() Dim sOrdner As String sOrdner = BrowseForFolder("Select a directory:") If sOrdner <> "" Then txtDir.Text = sOrdner End If End Sub

ആചീവ് ഫയലക േസവ് െചCാuം, നിലവിലvവ എക I ് ?ാ)് െചCാuമv I ് കാണി+,തിനായി ഫങ് ഷ് uക ഉ!ാേ !F!് ,ഇF%ടാെത ഇതിെf േ0ാEസ I ് ബാറിേല ് വാല. െകാട+,തിuv േകാഡം േചേ !F!് .ഇെതാ േ0ാEസ ഫങ് ഷെf §പിെലഴ താം,െമാഡ. ളിേലാ േഫാമിേലാ ഇF േച ാവ,താണ് .

Public Function SaveFilesToArchiv( _ ByVal sPath As String, ByVal sArchiv As String,Optional ByVal sPattern As String = "*.*") As Long Dim F ,n, nLenFileName, As Integer Dim nLenFileData, nFiles,I,ngUBound,l As Long Dim DirName ,FileData ,File() As String If Right$(sPath, 1) <> "\" Then sPath = sPath + "\" ഡയറക " ാ ഫയലകളം ലഭ.മാ+,തിന് . 4 റിയി നിം എല nFiles = 0 DirName = Dir(sPath & sPattern, vbNormal) While DirName <> "" If DirName <> "." And DirName <> ".." Then nFiles = nFiles + 1 If nFiles > lngUBound Then lngUBound = 2 * nFiles ReDim Preserve File(lngUBound) File(nFiles) = DirName End If DirName = Dir Wend ReDim Preserve File(nFiles) If Dir(sArchiv) <> "" Then Kill sArchiv ആചീവ് ഫയ നിലവിലെ!pി അത് ഡിലീ)് െചC,തിന് . ആചീവിേല ് ഫയലക േസവ് െചCാ8. F = FreeFile Open sArchiv For Binary As #F Put #F, , nFiles For I = 1 To nFiles nLenFileName = Len(File(I)) Put #F, , nLenFileName

Put #F, , File(I) n = FreeFile Open sPath + File(I) For Binary As #n FileData = Space$(LOF(n)) Get #n, , FileData Close #n nLenFileData = Len(FileData) Put #F, , nLenFileData Put #F, , FileData ShowProgress picProgress, I, 1, nFiles DoEvents Next I Close #F SaveFilesToArchiv = nFiles End Function ഫയലക ഔ&് പ&് േഫാഡറിേല ് എക I ് ?ാ)് െചCാ8.

Public Function ExtractFilesFromArchiv( ByVal sArchiv As String,ByVal sDestDir As String) As Long Dim F, n, nLenFileName As Integer Dim nLenFileData, nFiles, I As Long Dim FileData ,File, DirName As String ആചീവ് നിലവിലേ!ാ എ പരിേശാധി ാ8. If Dir(sArchiv) = "" Then MsgBox "The archive does not exist!", 16 Exit Function End If If Right$(sDestDir, 1) <> "\" Then sDestDir = sDestDir + "\" F = FreeFile Open sArchiv For Binary As #F ആചീവില v ഫയലകളെട എണ š ം കെ!ാ8. Get #F, , nFiles For I = 1 To nFiles Get #F, , nLenFileName File = Space$(nLenFileName) Get #F, , File Get #F, , nLenFileData FileData = Space$(nLenFileData) Get #F, , FileData n = FreeFile Open sDestDir + File For Output As #n Print #n, FileData; Close #n ShowProgress picProgress, I, 1, nFiles

DoEvents Next I Close #F ExtractFilesFromArchiv = nFiles End Function Private Sub ShowProgress(picProgress As PictureBox, _ ByVal Value As Long, ByVal Min As Long, ByVal Max As Long,Optional ByVal bShowProzent As Boolean = True) Dim pWidth As Long, intProz As Integer, strProz As String Const progBackColor = &HC00000 Const progForeColor = vbBlack Const progForeColorHighlight = vbWhite If Value < Min Then Value = Min If Value > Max Then Value = Max If Max > 0 Then intProz = Int(Value / Max * 100 + 0.5) Else intProz = 100 End If With picProgress If .AutoRedraw = False Then .AutoRedraw = True picProgress.Cls If Value > 0 Then pWidth = .ScaleWidth / 100 * intProz picProgress.Line (0, 0)-(pWidth, .ScaleHeight), _ progBackColor, BF If bShowProzent Then

strProz = CStr(intProz) & " %" .CurrentX = (.ScaleWidth - .TextWidth(strProz)) / 2 .CurrentY = (.ScaleHeight - .TextHeight(strProz)) / 2 If pWidth >= .CurrentX Then .ForeColor = progForeColorHighlight Else .ForeColor = progForeColor End If picProgress.Print strProz End If End If End With End Sub

CmdMakeArchiv ബ&നിേല ് ആചീവ!ാ+,തിനാവശ.മായ േകാഡ് േച ാം.

Private Sub cmdMakeArchiv_Click() Dim nFiles As Long On Local Error Resume Next With CommonDialog1 .CancelError = True .Filter = "Archive (*.dat)|*.dat" .DefaultExt = ".dat" .ShowSave If Err = 0 Then picProgress.Visible = True ആചീവിേല ് ഫയലക േസവ് െചCാ8. nFiles = SaveFilesToArchiv(txtDir.Text, _ .FileName, cmbPattern.Text) picProgress.Visible = False ആചീവ് െചയ് ത് ഫയലകളെട എണ š ം കാണി+,തിന് . MsgBox nFiles & " stored in " & .FileName, 64 End If End With End Sub

Fട,് ആചീവ് ഫയലക Fറ+,തിനാവശ.മായ േകാഡം േച് െ0ാEാം പ ണ š മാ ാം. Private Sub cmdExtractArchiv_Click() Dim nFiles As Long Dim sPath As String On Local Error Resume Next With CommonDialog1

.CancelError = True .Filter = "Archiv-Datei (*.dat)|*.dat" .ShowOpen If Err = 0 Then sPath = BrowseForFolder("Please select the directory to extract to:") If sPath <> "" Then picProgress.Visible = True nFiles = ExtractFilesFromArchiv(.FileName, sPath) picProgress.Visible = False MsgBox nFiles & " files extracted to " & sPath, 64 End If End If End With End Sub ആചീവ് േ0ാEാം തCാറാ+,തിuv േ0ാEാം ഇവിെട പ ണ š മാ£.ഫയലക ആചീവായി ഉപേയാഗി+േ^ാ നമ ് ഡിസ് ക് സ് േപയ് സ ം ലാഭി ാuമാവം.

പരിശീലനിനായി 1. 2. 3. 4.

േ0ാEാമിേല ് ട ബാ െമuബാ എ,ിവ േച+ക. േ0ാEാമിനക് ൈറ)് ബ&e ക " ി ി വ, ഒ േപാപ് അ9് െമu നിhി+ക. േപാ9് അ9് െമuവ ആചീവ് ഉ!ാ ാuം,എക I ് ?ാ)് െചCാuമv കമാfക ന£ക. േലബ,¢യിം കeേ?ാളക ഉപേയാഗെ9ടിെകാ!് അഡ ാ8സ് ഡ് ട  ടി9് േച+ക.

Related Documents

Arc Hi Eve Maker
May 2020 11
Arc Hi
May 2020 9
Arc Hi Tier
October 2019 18
Pun Arc Hi
November 2019 8
With Arc Hi Tech
May 2020 10
Sweet Arc Hi
May 2020 6

More Documents from ""