Page 1 of 1
Update C# sample
Posted: Wed Aug 30, 2017 8:52 pm
by jams
Hi,
I'm slowly building a C# library that wraps Everything into a fluent .NET API (
https://github.com/ju2pom/EverythingNet).
I'd like to add support for file results attributes like size, filename, dates ...
But it's sometimes hard to find the correct way to declare the function prototype.
It would be very useful if you could extend the C# sample to wrap all available functions.
For example I could find the a working syntax for file size:
Code: Select all
[DllImport(EverythingDLL)]
public static extern IntPtr Everything_GetResultSize(int nIndex, IntPtr size);
But I could not find the correct syntax for
Everything_GetResultFileName
Thanks
Re: Update C# sample
Posted: Thu Aug 31, 2017 8:06 am
by void
Updated:
http://www.voidtools.com/support/everything/sdk/csharp/
http://www.voidtools.com/Everything-SDK.zip
Code: Select all
[DllImport("Everything32.dll")]
public static extern bool Everything_GetResultSize(UInt32 nIndex, out long lpFileSize);
Code: Select all
UInt32 i;
for (i = 0; i < Everything_GetNumResults(); i++)
{
long size;
// get the result's full path and file name.
Everything_GetResultSize(i, out size);
// add it to the list box
listBox1.Items.Insert((int)i, size.ToString());
}
Re: Update C# sample
Posted: Thu Aug 31, 2017 8:27 pm
by jams
Hi,
Thanks a lot for your answer and the really fast update !
Unless I missed something there are still a few missing functions that I spotted:
Everything_GetResultListRequestFlags (easy one)
Everything_GetResultFileName (easy but not working?)
Everything_GetResultPath (already wrapped but always return null)
For your information I use the following flags:
Code: Select all
EVERYTHING_REQUEST_SIZE
EVERYTHING_REQUEST_FILE_NAME
EVERYTHING_REQUEST_ATTRIBUTES
EVERYTHING_REQUEST_PATH
EVERYTHING_REQUEST_FULL_PATH_AND_FILE_NAME
EVERYTHING_REQUEST_DATE_CREATED
EVERYTHING_REQUEST_DATE_MODIFIED
EVERYTHING_REQUEST_DATE_ACCESSED
EVERYTHING_REQUEST_DATE_RUN;
Re: Update C# sample
Posted: Thu Aug 31, 2017 10:31 pm
by void
Updated:
http://www.voidtools.com/support/everything/sdk/csharp/
http://www.voidtools.com/Everything-SDK.zip
Added Everything_GetResultFileName (was incorrectly labeled as Everything_GetResultFullFileName):
Code: Select all
[DllImport("Everything32.dll", CharSet = CharSet.Unicode)]
public static extern string Everything_GetResultFileName(UInt32 nIndex);
Added Everything_GetSort:
Code: Select all
[DllImport("Everything32.dll")]
public static extern UInt32 Everything_GetSort();
Added Everything_GetResultListRequestFlags:
Code: Select all
[DllImport("Everything32.dll")]
public static extern UInt32 Everything_GetResultListRequestFlags();
Please check your definition of Everything_GetResultPath, also please make sure you are requesting EVERYTHING_REQUEST_PATH
Code: Select all
[DllImport("Everything32.dll", CharSet = CharSet.Unicode)]
public static extern string Everything_GetResultPath(UInt32 nIndex);