ripdad Posted November 3, 2013 Posted November 3, 2013 Hi Melba, I ran some test on this script on the area of junctions. Some things I found were: $iHide_Link is declared as zero, but never changes at any point. I'm guessing line 129 may be the culprit. At line 277, the following should be... If $iHide_Link And BitAND($iAttribs, $iHide_Link) = 0x406 Then ContinueLoop EndIf otherwise, the value 0x002, which usually signifies an appdata folder, will get omitted. "The mediocre teacher tells. The Good teacher explains. The superior teacher demonstrates. The great teacher inspires." -William Arthur Ward
Moderators Melba23 Posted November 3, 2013 Author Moderators Posted November 3, 2013 ripdad. $iHide_Link is declared as zero, but never changes at any pointIt will if you set the correct parameter (lines 125-129):; Check for link/junction omitted If BitAND($iReturn, 16) Then $iHide_Link = 1024 ; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< $iReturn -= 16 EndIfAnd as it is already set to 0x0400 there should be no need to check the returned value from the BitAND call. From MSDN:FILE_ATTRIBUTE_REPARSE_POINT 1024 (0x400) A file or directory that has an associated reparse point, or a file that is a symbolic link.So are you saying that it does not exclude Link/junction folders if you add 16 to $iReturn? M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area
ripdad Posted November 3, 2013 Posted November 3, 2013 Melba, I'm using the script from the zip in the OP. So, I guess i'm missing something. Different version maybe? $iHide_Link = 1024, is not in that script. But this is: $iHide_HS = 0x406 "The mediocre teacher tells. The Good teacher explains. The superior teacher demonstrates. The great teacher inspires." -William Arthur Ward
Moderators Melba23 Posted November 4, 2013 Author Moderators Posted November 4, 2013 ropdad,You are quite right - no idea how that happened. It is now corrected. M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area
DA4NI Posted December 16, 2013 Posted December 16, 2013 Hello I am trying to set a exclude folder filter but i dont get it how to set the filter. I have also tried it with the GUI Version but it doesnt work either. I want to search for a file but exclude a folder like this: Folder to Exclude: serversharefolder $searchOriginalFile = _RecFileListToArray($pathorg,"file||serversharefolder", 1, 1, 0, 2) Can someone help me? Thanks, Daniel
Moderators Melba23 Posted December 16, 2013 Author Moderators Posted December 16, 2013 DA4NI,Welcome to the AutoIt forum. Just use the folder name, not the path: $searchOriginalFile = _RecFileListToArray($pathorg,"file||folder", 1, 1, 0, 2)M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area
DA4NI Posted December 16, 2013 Posted December 16, 2013 Hi M23 Thanks for your answer But what if de foldername exists several times in other subfolders and i just want to exclude one specific of these folders? For example: search for file1 in folder servershare but exclude this directory serversharefoldersw serversharefolderswfile1 => exclude serversharefoldersubfolderswfile1 => include serversharefoldersubfolder2swfile1 => include serversharefoldersubfolder3swfile1 => include Daniel
Moderators Melba23 Posted December 16, 2013 Author Moderators Posted December 16, 2013 DA4NI,If you exclude the top folder it is not searched and so you will never get to the subfolders. What I suggest you do is to search for the file in all folders and subfolders starting with serversharefoldersw, but ask for only the relative path to be returned so that you can loop through the returned array and instantly skip any elements that do not have a "" - they will be the returns from the top level folder. You can easily concatenate the search path to the returned value in the other elements to get the full path of the other files. Give it a try and let me know how you get on. M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area
Moderators Melba23 Posted December 23, 2013 Author Moderators Posted December 23, 2013 UDF Deprecated - 23 Dec 2013As since the release of v3.3.10.0 the basis of this UDF is now included in the standard AutoIt UDFs as _FileListToArrayRec in File.au3, support will end in this thread and any future bug reports or feature requests should be made via Trac. Note that there are a couple of major changes in the new function compared to this UDF:- You must place the Include|Exclude|Exclude_Folder masks in the single $sMask parameter, delimited by "|". The old syntax with the "exclude" masks at the end of the parameter list will no longer work, unlike this UDF.- The values returned in @extended in the event of an error have been reordered to reflect the above - so you might need to amend your errorchecking. But note that "no files found" still returns 9 in @extended - I am not that cruel! - The sort algorithm has been changed from QuickSort to DualPivot, which is significantly faster for large arrays. I hope you appreciate the faster return times.A zip remians available in the first post for those who do not wish to update immediately. M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area
Recommended Posts