Mbee Posted November 1, 2016 Share Posted November 1, 2016 Dear Master @Melba23 , I'm trying to use your mods to @seangriffin 's FileSystemMonitor UDF (I found your mods here: FileSystemMonitor UDF partially broken in x64 environment), to try to monitor changes to a specific folder (not Shell modifications, but rather just new file creations by a different process into a single directory). One requirement of using that UDF is that the user provide a function to handle notification of such changes named "_FileSysMonActionEvent()". The problem I'm having is that this function is never being invoked no matter what new files are created in the directory in question! The UDF includes a function named "_FileSysMonDirEventHandler()" which is a front end to the user-provided function _FileSysMonActionEvent(). Here's a code snippet from FileSysMonDirEventHandler()... Func _FileSysMonDirEventHandler() Local $aRet, $iOffset, $nReadLen, $tStr, $iNext, $ff $aRet = DllCall("User32.dll", "dword", "MsgWaitForMultipleObjectsEx", "dword", 1, "ptr", $pFSM_DirEvents, "dword", 100, "dword", 0x4FF, "dword", 0x6) If $aRet[0] = 0 Then ; misc code... _FileSysMonActionEvent(0, DllStructGetData($tFSM_FNI, "Action"), $sFSM_Filename) ; User function called ; more code... Else ;; IT ALWAYS GETS HERE ONLY! EndIf Return True EndFunc ;==>_FileSysMonDirEventHandler I'm too stupid to understand quite what that DllCall is supposed to do, but it's clear that the zero'th element of the return array is never 0, so the user-provided handler function is never called. Do you have any idea why that's (not) happening? I realize that you weren't the original or main developer of that UDF, so if you'd prefer that I try to PM or otherwise try to contact @seangriffin instead, please just let me know and that's what I'll try. I'm asking you in this OP because you're amazingly generous to us noobs, and you're here on the forum a lot, and because you're awesome!! Thanks! Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted November 1, 2016 Moderators Share Posted November 1, 2016 Mbee, Flattery always helps!!!!! Please post the code you are using so that I can take a look at it. In the meantime I will try and get refamiliarized with the UDF as it is sometime since I last used it. 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 Link to comment Share on other sites More sharing options...
Mbee Posted November 1, 2016 Author Share Posted November 1, 2016 Just now, Melba23 said: Mbee, Flattery always helps!!!!! Please post the code you are using so that I can take a look at it. In the meantime I will try and get refamiliarized with the UDF as it is sometime since I last used it. M23 WOW, and fast response too! For now, I'm just using your own example GUI for your modifications to that UDF, with a tiny few changes to eliminate the code for Shell monitoring and thus using directory monitoring only. Here's that code: expandcollapse popup#include <GUIConstants.au3> #include <GUIConstantsEx.au3> #include <ListviewConstants.au3> #Include <GuiListView.au3> #include <WindowsConstants.au3> #include "FileSystemMonitor_Mod.au3" dim $msg ; GUI Setup $main_gui = GUICreate("Shell Notification Monitor (Press ESC to close)", 800, 320, -1, -1, -1, $WS_EX_TOPMOST) $path_input = GUICtrlCreateInput("Y:\Test Caps\", 10, 10, 320) $use_path_button = GUICtrlCreateButton("Use Path", 350, 10) $listview = GUICtrlCreateListView("", 10, 40, 780, 250, $LVS_REPORT) _GUICtrlListView_SetUnicodeFormat($listview, False) _GUICtrlListView_InsertColumn($listview, 0, "Type", 200) _GUICtrlListView_InsertColumn($listview, 1, "Name (Hex)", 200) _GUICtrlListView_InsertColumn($listview, 2, "Value", 200) _GUICtrlListView_InsertColumn($listview, 3, "Time", 100) GUISetState(@SW_SHOW) ; Setup File System Monitoring _FileSysMonSetup(1, "Y:\Test Caps\") _FileSysMonSetDirMonPath("Y:\Test Caps\") ; Main Loop While 1 ; Handle Directory related events _FileSysMonDirEventHandler() If $msg = $use_path_button then _FileSysMonSetDirMonPath(GUICtrlRead($path_input)) ;~ _FileSysMonSetShellMonPath(GUICtrlRead($path_input)) ; Don't monitor shell changes EndIf If $msg = $GUI_EVENT_CLOSE then ExitLoop EndIf $msg = GUIGetMsg() WEnd Exit Func _FileSysMonActionEvent($event_type, $event_id, $event_value) ConsoleWrite($event_type & " - " & $event_id & " - " & $event_value & @CRLF) Local $event_type_name Local $fs_event = ObjCreate("Scripting.Dictionary") Switch $event_type Case 0 $fs_event.item(Hex(0x00000001)) = "file added to the directory|FILE_ACTION_ADDED" $fs_event.item(Hex(0x00000002)) = "file removed from the directory|FILE_ACTION_REMOVED" $fs_event.item(Hex(0x00000003)) = "file was modified|FILE_ACTION_MODIFIED" $fs_event.item(Hex(0x00000004)) = "file was renamed old name|FILE_ACTION_RENAMED_OLD_NAME" $fs_event.item(Hex(0x00000005)) = "file was renamed new name|FILE_ACTION_RENAMED_NEW_NAME" Case 1 $fs_event.item(Hex(0x00000001)) = "Non-folder item name changed|SHCNE_RENAMEITEM" $fs_event.item(Hex(0x00000002)) = "Non-folder item created|SHCNE_CREATE" $fs_event.item(Hex(0x00000004)) = "Non-folder item deleted|SHCNE_DELETE" $fs_event.item(Hex(0x00000008)) = "Folder created|SHCNE_MKDIR" $fs_event.item(Hex(0x00000010)) = "Folder removed|SHCNE_RMDIR" $fs_event.item(Hex(0x00000020)) = "Storage media inserted into a drive|SHCNE_MEDIAINSERTED" $fs_event.item(Hex(0x00000040)) = "Storage media removed from a drive|SHCNE_MEDIAREMOVED" $fs_event.item(Hex(0x00000080)) = "Drive removed|SHCNE_DRIVEREMOVED" $fs_event.item(Hex(0x00000100)) = "Drive added|SHCNE_DRIVEADD" $fs_event.item(Hex(0x00000200)) = "Local computer folder shared via the network|SHCNE_NETSHARE" $fs_event.item(Hex(0x00000400)) = "Local computer folder not shared via the network|SHCNE_NETUNSHARE" $fs_event.item(Hex(0x00000800)) = "Item or folder attributes have changed|SHCNE_ATTRIBUTES" $fs_event.item(Hex(0x00001000)) = "Folder content has changed|SHCNE_UPDATEDIR" $fs_event.item(Hex(0x00002000)) = "Folder or non-folder has changed|SHCNE_UPDATEITEM" $fs_event.item(Hex(0x00004000)) = "Computer disconnected from server|SHCNE_SERVERDISCONNECT" $fs_event.item(Hex(0x00008000)) = "System image list image has changed|SHCNE_UPDATEIMAGE" $fs_event.item(Hex(0x00010000)) = "Not used|SHCNE_DRIVEADDGUI" $fs_event.item(Hex(0x00020000)) = "Folder name has changed|SHCNE_RENAMEFOLDER" $fs_event.item(Hex(0x00040000)) = "Drive free space has changed|SHCNE_FREESPACE" $fs_event.item(Hex(0x0002381F)) = "SHCNE_DISKEVENTS" $fs_event.item(Hex(0x0C0581E0)) = "SHCNE_GLOBALEVENTS" $fs_event.item(Hex(0x7FFFFFFF)) = "SHCNE_ALLEVENTS" $fs_event.item(Hex(0x80000000)) = "SHCNE_INTERRUPT" EndSwitch if StringLen($fs_event.item(Hex(Int($event_id)))) > 0 Then $event_type_name = StringSplit($fs_event.item(Hex(Int($event_id))), "|") $event_type_name[2] = $event_type_name[2] & "(" & $event_id & ")" _GUICtrlListView_InsertItem($listview, $event_type_name[1], 0) _GUICtrlListView_SetItemText($listview, 0, $event_type_name[2], 1) _GUICtrlListView_SetItemText($listview, 0, $event_value, 2) _GUICtrlListView_SetItemText($listview, 0, @HOUR & ":" & @MIN & ":" & @SEC, 3) EndIf EndFunc It's virtually identical to your own example code... Link to comment Share on other sites More sharing options...
Mbee Posted November 1, 2016 Author Share Posted November 1, 2016 Hey, @Melba23 , if you'd like a little tech help, I found something online that might be useful... Understanding ReadDirectoryChangesW - Part 1 Understanding ReadDirectoryChangesW - Part 2 Thanks! Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted November 1, 2016 Moderators Share Posted November 1, 2016 Mbee, Using that code pointed at one of my own folders produces the expected messages in the SciTE console when I add/delete/rename the files within it. Did you change anything in the UDF itself? 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 Link to comment Share on other sites More sharing options...
Mbee Posted November 1, 2016 Author Share Posted November 1, 2016 No, I made no changes to the modified UDF you posted. But not only do I never get any messages to the console, I never see anything in the example GUI either. Hmmm.... I'm currently running 64-bit Win 7 Pro with 64-bit AutoIt (latest official release). I'm afraid I don't have any computers running 32-bit Windows, but I can try it under 64-bit Win 10 Pro. What do you think? Link to comment Share on other sites More sharing options...
Mbee Posted November 1, 2016 Author Share Posted November 1, 2016 Are you sure you disabled Shell monitoring, as I did in the example code I posted above? When I had Shell monitoring enabled, I saw all those changes. But with directory monitoring only, I see nothing... Link to comment Share on other sites More sharing options...
Mbee Posted November 1, 2016 Author Share Posted November 1, 2016 (I have to take off for a while, so I might not be able to respond for a time...) Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted November 2, 2016 Moderators Share Posted November 2, 2016 (edited) Mbee, Quote Are you sure you disabled Shell monitoring Yes - and that is why you get nothing in the GUI as that displays the "shell" events while the "directory" changes appear in the console. I am running 32-bit Windows so it might well be your 64-bit setup which is causing the problem - although I thought that was sorted in the thread to which you linked. Let me know when you return and are In a position to resume the thread. M23 Edit: Corrected erroneous statement above. I am working on new Switch structure to see if it gets around the 32/64 problem. Edited November 3, 2016 by Melba23 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 Link to comment Share on other sites More sharing options...
Mbee Posted November 3, 2016 Author Share Posted November 3, 2016 Hi, Melba23! Sorry for the delay in responding. Part of it was that I absolutely had to watch the Cubs win the world series for the first time since 1908! Talk about being gobsmacked!! Anyway, I've modified the example code to import and use a modified version of a UDF that let's me simultaneously display and log status messages so that I don't have to rely on the console to see what's going on. I've attached a zip file with the source files and the output log file. Before running the result, I uninstalled AutoIt and then re-installed it for 32-bit usage only. (Installing a new copy of 32-bit Windows was far too troublesome a task to try to that as well). What the log tells me is this: Although the directory monitoring detects something going on when a new file is created in the test directory, the information returned is extremely minimal and so is quite useless for my needs. I at least need to know the filename(s) of any new files created. This noob's barely-educated opinion is that even the modified UDF just isn't what it's cracked up to be, but revising it to usefully monitor file creation events even in a single directory is beyond my abilities... ExampleCode.zip Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted November 3, 2016 Moderators Share Posted November 3, 2016 Mbee, Glad you enjoyed the baseball. I get lots of information returned from the original UDF - here is an example of what I get in the GUI and console: file was modified - FILE_ACTION_MODIFIED(3) - test.fil - 17:33:30 file was renamed old name - FILE_ACTION_RENAMED_OLD_NAME(4) - test.fil - 17:33:43 file was renamed new name - FILE_ACTION_RENAMED_NEW_NAME(5) - new_test.fil - 17:33:43 file was modified - FILE_ACTION_MODIFIED(3) - new_test.fil - 17:33:44 file removed from the directory - FILE_ACTION_REMOVED(2) - new_test.fil - 17:33:54 That little lot resulted from renaming an existing file, renaming it again, and then finally deleting it. Seems pretty comprehensive to me. 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 Link to comment Share on other sites More sharing options...
Mbee Posted November 3, 2016 Author Share Posted November 3, 2016 Interesting! I'm gonna try using the original UDF now, and will report back.. Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted November 3, 2016 Moderators Share Posted November 3, 2016 Mbee, Try using this modified Switch structure to read the UDF return values: expandcollapse popup#include <GUIConstants.au3> #include <GUIConstantsEx.au3> #include <ListviewConstants.au3> #Include <GuiListView.au3> #include <WindowsConstants.au3> #include "fred4.au3" dim $msg ; GUI Setup $main_gui = GUICreate("Shell Notification Monitor (Press ESC to close)", 800, 320, -1, -1, -1, $WS_EX_TOPMOST) $path_input = GUICtrlCreateInput("", 10, 10, 320) $use_path_button = GUICtrlCreateButton("Use Path", 350, 10) $listview = GUICtrlCreateListView("", 10, 40, 780, 250, $LVS_REPORT) _GUICtrlListView_SetUnicodeFormat($listview, False) _GUICtrlListView_InsertColumn($listview, 0, "Type", 200) _GUICtrlListView_InsertColumn($listview, 1, "Name (Hex)", 200) _GUICtrlListView_InsertColumn($listview, 2, "Value", 200) _GUICtrlListView_InsertColumn($listview, 3, "Time", 100) GUISetState(@SW_SHOW) ; Setup File System Monitoring ;_FileSysMonSetup(3, "M:\Program\Au3 Scripts", "M:\") _FileSysMonSetup(1, "M:\Program\Au3 Scripts") ; Main Loop While 1 ; Handle Directory related events _FileSysMonDirEventHandler() If $msg = $use_path_button then _FileSysMonSetDirMonPath(GUICtrlRead($path_input)) ;~ _FileSysMonSetShellMonPath(GUICtrlRead($path_input)) ; Don't monitor shell changes EndIf If $msg = $GUI_EVENT_CLOSE then ExitLoop EndIf $msg = GUIGetMsg() WEnd Exit Func _FileSysMonActionEvent($event_type, $event_id, $event_value) ConsoleWrite($event_type & " - " & $event_id & " - " & $event_value & @CRLF) Local $sEvent = "" Switch $event_type Case 0 ; Directory event Switch $event_id Case 1 $sEvent = "file added to the directory|FILE_ACTION_ADDED" Case 2 $sEvent = "file removed from the directory|FILE_ACTION_REMOVED" Case 3 $sEvent = "file was modified|FILE_ACTION_MODIFIED" Case 4 $sEvent = "file was renamed old name|FILE_ACTION_RENAMED_OLD_NAME" Case 5 $sEvent = "file was renamed new name|FILE_ACTION_RENAMED_NEW_NAME" EndSwitch Case 1 ; Shell event Switch $event_id Case 0x00000001 $sEvent = "Non-folder item name changed|SHCNE_RENAMEITEM" Case 0x00000002 $sEvent = "Non-folder item created|SHCNE_CREATE" Case 0x00000004 $sEvent = "Non-folder item deleted|SHCNE_DELETE" Case 0x00000008 $sEvent = "Folder created|SHCNE_MKDIR" Case 0x00000010 $sEvent = "Folder removed|SHCNE_RMDIR" Case 0x00000020 $sEvent = "Storage media inserted into a drive|SHCNE_MEDIAINSERTED" Case 0x00000040 $sEvent = "Storage media removed from a drive|SHCNE_MEDIAREMOVED" Case 0x00000080 $sEvent = "Drive removed|SHCNE_DRIVEREMOVED" Case 0x00000100 $sEvent = "Drive added|SHCNE_DRIVEADD" Case 0x00000200 $sEvent = "Local computer folder shared via the network|SHCNE_NETSHARE" Case 0x00000400 $sEvent = "Local computer folder not shared via the network|SHCNE_NETUNSHARE" Case 0x00000800 $sEvent = "Item or folder attributes have changed|SHCNE_ATTRIBUTES" Case 0x00001000 $sEvent = "Folder content has changed|SHCNE_UPDATEDIR" Case 0x00002000 $sEvent = "Folder or non-folder has changed|SHCNE_UPDATEITEM" Case 0x00004000 $sEvent = "Computer disconnected from server|SHCNE_SERVERDISCONNECT" Case 0x00008000 $sEvent = "System image list image has changed|SHCNE_UPDATEIMAGE" Case 0x00010000 $sEvent = "Not used|SHCNE_DRIVEADDGUI" Case 0x00020000 $sEvent = "Folder name has changed|SHCNE_RENAMEFOLDER" Case 0x00040000 $sEvent = "Drive free space has changed|SHCNE_FREESPACE" Case 0x0002381F $sEvent = "SHCNE_DISKEVENTS" Case 0x0C0581E0 $sEvent = "SHCNE_GLOBALEVENTS" Case 0x7FFFFFFF $sEvent = "SHCNE_ALLEVENTS" Case 0x80000000 $sEvent = "SHCNE_INTERRUPT" EndSwitch EndSwitch if $sEvent Then $event_type_name = StringSplit($sEvent, "|") $event_type_name[2] = $event_type_name[2] & "(" & $event_id & ")" _GUICtrlListView_InsertItem($listview, $event_type_name[1], 0) _GUICtrlListView_SetItemText($listview, 0, $event_type_name[2], 1) _GUICtrlListView_SetItemText($listview, 0, $event_value, 2) _GUICtrlListView_SetItemText($listview, 0, @HOUR & ":" & @MIN & ":" & @SEC, 3) ConsoleWrite($event_type_name[1] & " - " & $event_type_name[2] & " - " & $event_value & " - " & @HOUR & ":" & @MIN & ":" & @SEC & @CRLF) EndIf EndFunc 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 Link to comment Share on other sites More sharing options...
Mbee Posted November 3, 2016 Author Share Posted November 3, 2016 Well, I see no difference in the results between the original UDF by @seangriffin and the version you modified. I'm still getting no useful information, and the log files are identical (if you ignore the time stamps). I wonder if the difference really is 32 versus 64 bits or if there's some other difference in our systems... Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted November 3, 2016 Moderators Share Posted November 3, 2016 Mbee, Add ConsoleWrite($event_id & @CRLF) just after the Case 0 ; Directory event line and see if you actually get a return value - or even arrive at that point in the script. 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 Link to comment Share on other sites More sharing options...
Mbee Posted November 3, 2016 Author Share Posted November 3, 2016 (edited) Let's ignore my Post # 14, and get back in sync. With your new code, I *am* getting more info! Hooray!! I haven't seen filenames yet, however -- But please gimme a moment to check things out better... ETA: I have indeed seen filenames, but bear with me a while longer... Edited November 3, 2016 by Mbee Link to comment Share on other sites More sharing options...
Mbee Posted November 3, 2016 Author Share Posted November 3, 2016 You've made a big improvement, Melba, thanks! In 32-bit mode, I saw two "File Added" events with the same filename even though only a single file was created (saved there from a text editor). That should be easy to deal with, however: I'll just code my stuff such that it ignores File Added with identical filenames. But unfortunately, when I compiled and executed the .exe with ... #AutoIt3Wrapper_UseX64=Y ... it went back to showing nothing again. Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted November 3, 2016 Moderators Share Posted November 3, 2016 Mbee, have you added the line I suggested in post #15 above? What are you seeing in the console? 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 Link to comment Share on other sites More sharing options...
Mbee Posted November 3, 2016 Author Share Posted November 3, 2016 Sorry for the wait... I think I may have failed to communicate the results in my previous post sufficiently well. Here's the actual status after I incorporated your new code: If I compile the code and run the resulting exe such that the first line reads: #AutoIt3Wrapper_UseX64=N Then everything works great! Everything. I'm getting all the necessary info - including the additional line of code from Post #15 (although I changed it from "ConsoleWrite" to a write to a log file instead so I could more easily review the results). But if the first line reads: #AutoIt3Wrapper_UseX64=Y Then I get nothing except the titles. No other display or output anywhere -- not even from the extra ConsoleWrite (actually a Write to log file) line. Bummerville. Now, that might have something to do with the fact that I re-installed AutoIt and specified 32-bit only. So I'm about to uninstall AutoIt and re-install it for 64-bit mode again, then I'll report back... Link to comment Share on other sites More sharing options...
Mbee Posted November 3, 2016 Author Share Posted November 3, 2016 (edited) Unsurprisingly, it didn't make any difference that I re-installed AutoIt with 64-bit defaults. The #AutoIt3Wrapper directive must over-ride the defaults. I still get nothing but titles and headers if I set UseX64=Y. ETA: It also doesn't matter whether I use the original UDF or your modified UDF... Edited November 3, 2016 by Mbee Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now