Plug-in and third party software discussion.
-
zhr
- Posts: 7
- Joined: Fri Jun 07, 2013 12:46 pm
Post
by zhr » Fri Jun 07, 2013 1:00 pm
I have a problem with the following code in VBA7 Microsoft Excell 2010 on Win 7 x64.
VBA7 Microsoft Excell 2010 can't open(find) Everything.dll.
In VBA7 Microsoft Excell 2010 on Win 7 x32 this code runs correctly.
What the problem in Win 7 x64?
I need help.
Code: Select all
Public Type Zfilestruct
FullPathFileName As String * 260
PathPartLength As Long ' Length of the path part only
FileNamePartOffset As Long ' Offset into FullPathFileName for the file name part only (0 based)
SizeHigh As Long ' Not used in this example.
SizeLow As Long ' Not used in this example.
Attributes As Long ' Attribute flags can be zero or EVERYTHING_FILE_ATTRIBUTE_DIRECTORY flag
CreationYear As Long ' Not used in this example.
CreationMonth As Long ' Not used in this example.
CreationDayOfWeek As Long ' Not used in this example.
CreationDay As Long ' Not used in this example.
CreationHour As Long ' Not used in this example.
CreationMinute As Long ' Not used in this example.
CreationSecond As Long ' Not used in this example.
CreationMilliseconds As Long ' Not used in this example.
LastAccessYear As Long ' Not used in this example.
LastAccessMonth As Long ' Not used in this example.
LastAccessDayOfWeek As Long ' Not used in this example.
LastAccessDay As Long ' Not used in this example.
LastAccessHour As Long ' Not used in this example.
LastAccessMinute As Long ' Not used in this example.
LastAccessSecond As Long ' Not used in this example.
LastAccessMilliseconds As Long ' Not used in this example.
LastWriteYear As Long ' Not used in this example.
LastWriteMonth As Long ' Not used in this example.
LastWriteDayOfWeek As Long ' Not used in this example.
LastWriteDay As Long ' Not used in this example.
LastWriteHour As Long ' Not used in this example.
LastWriteMinute As Long ' Not used in this example.
LastWriteSecond As Long ' Not used in this example.
LastWriteMilliseconds As Long ' Not used in this example.
End Type
Dim FINDfile As Zfilestruct
Declare PtrSafe Sub Everything_SetSearch Lib "Everything" (ByVal Zfilter As String)
Private Declare PtrSafe Sub Everything_Query Lib "Everything" ()
Declare PtrSafe Function Everything_GetNumResults Lib "Everything" () As Long
Declare PtrSafe Sub Everything_GetResult Lib "Everything" (ByVal Xnumber As Long, ByRef Xfile As Zfilestruct)
Sub start()
Everything_SetSearch (Cells(1, 1).Text)
Everything_Query
num = Everything_GetNumResults()
For i = 0 To num - 1
Everything_GetResult i, FINDfile
Cells(i + 1, 3) = FINDfile.FullPathFileName
Next i
End Sub
-
void
- Site Admin
- Posts: 4998
- Joined: Fri Oct 16, 2009 11:31 pm
Post
by void » Fri Jun 07, 2013 1:05 pm
You will need an x64 version of the Everything.dll which I hope to release soon.
-
zhr
- Posts: 7
- Joined: Fri Jun 07, 2013 12:46 pm
Post
by zhr » Fri Jun 07, 2013 1:09 pm
Tell me the approximate release date, please.
-
void
- Site Admin
- Posts: 4998
- Joined: Fri Oct 16, 2009 11:31 pm
Post
by void » Fri Jun 07, 2013 2:10 pm
I've compiled the dll as x64, you can find it here:
Everything.x64.dll.zip
Good luck!
-
zhr
- Posts: 7
- Joined: Fri Jun 07, 2013 12:46 pm
Post
by zhr » Fri Jun 07, 2013 4:45 pm
thank you very much, I will try
-
zhr
- Posts: 7
- Joined: Fri Jun 07, 2013 12:46 pm
Post
by zhr » Mon Jun 10, 2013 5:54 am
hello, in the new library Everything.dll x64 does not find an entry point Everything_SetSearch
http://yadi.sk/d/VjGaHIHK5eo3E
-
void
- Site Admin
- Posts: 4998
- Joined: Fri Oct 16, 2009 11:31 pm
Post
by void » Mon Jun 10, 2013 6:15 am
-
void
- Site Admin
- Posts: 4998
- Joined: Fri Oct 16, 2009 11:31 pm
Post
by void » Mon Jun 10, 2013 12:31 pm
depends.exe is showing that the entry points exist.
Try changing:
Code: Select all
Declare PtrSafe Sub Everything_SetSearch Lib "Everything" (ByVal Zfilter As String)
Private Declare PtrSafe Sub Everything_Query Lib "Everything" ()
Declare PtrSafe Function Everything_GetNumResults Lib "Everything" () As Long
Declare PtrSafe Sub Everything_GetResult Lib "Everything" (ByVal Xnumber As Long, ByRef Xfile As Zfilestruct)
to:
Code: Select all
Declare PtrSafe Sub Everything_SetSearch Lib "Everything.x64.dll" (ByVal Zfilter As String)
Private Declare PtrSafe Sub Everything_Query Lib "Everything.x64.dll" ()
Declare PtrSafe Function Everything_GetNumResults Lib "Everything.x64.dll" () As Long
Declare PtrSafe Sub Everything_GetResult Lib "Everything.x64.dll" (ByVal Xnumber As Long, ByRef Xfile As Zfilestruct)
Is Everything.x64.dll in the right location?
...I am not familiar with VBA 7.
-
void
- Site Admin
- Posts: 4998
- Joined: Fri Oct 16, 2009 11:31 pm
Post
by void » Mon Jun 10, 2013 12:50 pm
*Please make sure you specify Everything.x64.dll in VBA 7, instead of Everything or Everything.dll
-
zhr
- Posts: 7
- Joined: Fri Jun 07, 2013 12:46 pm
Post
by zhr » Tue Jun 11, 2013 5:44 am
podump.exe also does not see entry point for function Everything_SetSearch and Everything_Query
http://yadi.sk/d/YixugjSx5hH0e
-
void
- Site Admin
- Posts: 4998
- Joined: Fri Oct 16, 2009 11:31 pm
Post
by void » Tue Jun 11, 2013 7:06 am
Everything_SetSearch is exported as:
Everything_SetSearchA for ANSI and Everything_SetSearchW for Unicode.
Everything_Query is exported as:
Everything_QueryA for ANSI and Everything_QueryW for Unicode.
Please try changing:
Code: Select all
Declare PtrSafe Sub Everything_SetSearch Lib "Everything" (ByVal Zfilter As String)
Private Declare PtrSafe Sub Everything_Query Lib "Everything" ()
Declare PtrSafe Function Everything_GetNumResults Lib "Everything" () As Long
Declare PtrSafe Sub Everything_GetResult Lib "Everything" (ByVal Xnumber As Long, ByRef Xfile As Zfilestruct)
to:
Code: Select all
Declare PtrSafe Sub Everything_SetSearch Lib "Everything.x64.dll" Alias "Everything_SetSearchW" (ByVal Zfilter As String)
Private Declare PtrSafe Sub Everything_Query Lib "Everything.x64.dll" Alias "Everything_QueryW" (ByVal bWait As Long)
Declare PtrSafe Function Everything_GetNumResults Lib "Everything.x64.dll" () As Long
Declare PtrSafe Sub Everything_GetResult Lib "Everything.x64.dll" (ByVal Xnumber As Long, ByRef Xfile As Zfilestruct)
-
zhr
- Posts: 7
- Joined: Fri Jun 07, 2013 12:46 pm
Post
by zhr » Tue Jun 11, 2013 11:47 am
thank you very much for your answers,
but unfortunately for other applications used by me DLL's are not yet available for Office2010 x64.
I'm back on the Office2010 x32 and will use your Everything.dll.
Topic is locked ... yet.
Good luck.