Page 1 of 1
find in files problems
Posted: Wed Dec 15, 2004 12:00 am
by k10ck3r
searching for static class member references gets a parsing error:
example:
find in files for "Utility::Log" gives this error:
(NOTE: regular find works - only find in files has the problem)
Debug: Command: xfgrep.exe -i -f -n "Utility::Log" *.*
Debug: Command Line: c:\winnt\system32\cmd.exe /c xfgrep.exe -i -f -n "Utility::Log" *.*
Debug: Started Process ID: 0x754
fgrep -i -f -n Utility::Log *.*
-GREP-E-Unknown : type, pattern is"Utility::Log"
-GREP-E-Stopped at byte 9, ':'
?GREP-E-Bad pattern
Posted: Wed Dec 15, 2004 5:37 am
by Guest
As is indicated by the debug output that you have posted, you will notice Zeus uses
fgrep.exe to do the actually searching and one the great advantages of using
fgrep.exe is the fact that you can use regular expression search strings
But the side effect of this is that some characters are reserved by the regular expression engine.
In this case the
: is a reserved character and
fgrep.exe is interpreting the string as a badly formed regular expression and hence the reason for the error message.
Fortunately this can be easliy fixed by delimiting the
: character by changing the search string to the following:
Cheers Jussi
PS: For more information about the
fgrep.exe regular expression feature type in
fgrep.exe ?.
Posted: Thu Dec 16, 2004 12:00 am
by k10ck3r
ok ... but there is a check box in the GUI to enable the use of regular expressions. Given that the box is not checked, shouldn't that mean that the search does not use regular expressions?
Posted: Thu Dec 16, 2004 1:28 am
by jussij
Given that the box is not checked, shouldn't that mean that the search does not use regular expressions?
This looks like a bug in the find in files dialog box
The regular expression check box does nothing at all to the
xfgrep.exe command line. The other check box options map to a
xfgrep.exe command line option, but there is no
regular expression command line option. I am not really sure why it is option is even there
I think this might be a hangover from an earlier version of Zeus at which time a different fgrep tool (with a regular expression command line option) was used.
Thank you for highlighting this bug.
Cheers Jussi.
Posted: Wed Feb 02, 2005 9:53 pm
by jussij
The
Zeus for Windows Version 3.94 release should have fixed this bug
Cheers Jussi
Posted: Wed Mar 02, 2005 4:02 pm
by bobweekend
I just upgraded to the full registered version and now find in files no longer works
'xfgrep.exe' is not recognized as an internal or external command,
operable program or batch file.
I have 3.93d before.
Posted: Wed Mar 02, 2005 4:05 pm
by bobweekend
I closed and restarted and problem went away.
I have done the launch check box as part of the install.
Bob
Posted: Wed Mar 02, 2005 11:19 pm
by jussij
Hi Bob,
I just upgraded to the full registered version and now find in files no longer works 'xfgrep.exe' is not recognized as an internal or external command, operable program or batch file.
I closed and restarted and problem went away.
You have found a know problem.
Just FYI what is happening is the installer creates a application registry entry that defines where Zeus is located. Windows is meant to uses this key to modify the path for the executable and this allows Zeus to find the
xfgrep.exe file.
But for reasons only know to Microsoft, if you run the application from the installer the registry entries are ignored, the path is not modified and hence the reason for the error.
But as you point out if you restart Zeus, the registry entries work as designed, the path gets modified and the grep tool can be run. This is a rather annoying problem since it basically means there is no way to run Zeus correctly via the installer.
Jussi