EldoS | Feel safer!

Software components for data protection, secure storage and transfer

Installation package for callback filesystem

Also by EldoS: Rethync
The cross-platform framework that simplifies synchronizing data between mobile and desktop applications and servers and cloud storages
#17617
Posted: 09/21/2011 21:31:33
by ray han (Basic support level)
Joined: 05/10/2011
Posts: 24

Hi,
I am trying to build a installer for my application that uses callback filesystem. As a part of installation, I am also providing a installer to install the driver.

I see that there are two possible options.
1. Call CallbackFileSystem::Install
2. Use InstallA API provided cbfsinst.dll

Which is the right one to use?

Thanks
Ray
#17618
Posted: 09/21/2011 23:54:51
by Eugene Mayevski (EldoS Corp.)

Either one would work and it's up to you to decide, which one is easier to implement in your particular case. Eg. if your installer is an executable you write (we've done this in SFTP Net Drive), then call CallbackFileSystem::Install . If you use InstallShield, Innosetup etc. and write setup scripts for those tools, then cbfsinst.dll is easier to use.


Sincerely yours
Eugene Mayevski
#17623
Posted: 09/22/2011 09:00:46
by ray han (Basic support level)
Joined: 05/10/2011
Posts: 24

Thank you Eugene.
I am also happy to report that the Cbfs works very well :). I have been using to expose a remote server as a local network drive and the info in this forum has been very helpful in tweaking it.

Regards
#17624
Posted: 09/22/2011 12:21:10
by ray han (Basic support level)
Joined: 05/10/2011
Posts: 24

I have a noob question regarding reading driver version.
The GetModuleStatus returns VersionHigh and VersionLow unsigned longs.

So, I am assuming that the version is a 64 bit quantity and do the following
ULONGLONG ullValue = ( ( ( ULONGLONG )VersionHigh ) << 32 ) + ( ( ULONGLONG )VersionLow );

But the number I get is obviously not the 2.32.xxx type. Can someone point me to the right way to rebuild version info?

Thanks
#17625
Posted: 09/22/2011 14:11:32
by Volodymyr Zinin (EldoS Corp.)

VersionHigh and VersionLow both contain two values - one in the upper 16 bits and the other in the lower 16 bits.
For example for 2.32.6.28
VersionHigh - 0x00020020 = "2.32"
VersionLow - 0x0006001C = "6.28"
#17626
Posted: 09/22/2011 14:58:57
by Eric Dahlvang (Standard support level)
Joined: 09/11/2009
Posts: 29

As a suggestion, it would be nice if this information were in your documentation for the GetModuleStatus function.

It found it very difficult to figure this out on my own.

(Convert results from GetModuleStatus to hex, split the hex result in two, then convert both back to int)
#17632
Posted: 09/23/2011 08:17:02
by ray han (Basic support level)
Joined: 05/10/2011
Posts: 24

One more question regarding installation is that, when I try to install a driver whose version is same as the driver that is already installed, I still get the "reboot" as true. Is it possible for me to determine the version of the cab file and not do the install? Since the application code can change more frequently than driver updates, I would like to add this function.

If it is not possible, I guess I can hard code version of the driver packaged manually and then check it with the installed driver, but that will be cumbersome.
#17633
Posted: 09/23/2011 08:26:25
by Eugene Mayevski (EldoS Corp.)

Quote
ray han wrote:
Is it possible for me to determine the version of the cab file and not do the install? Since the application code can change more frequently than driver updates, I would like to add this function.


Please read this forum topic, it discusses exactly this question.


Sincerely yours
Eugene Mayevski
Also by EldoS: CallbackRegistry
A component to monitor and control Windows registry access and create virtual registry keys.

Reply

Statistics

Topic viewed 1543 times

Number of guests: 1, registered members: 0, in total hidden: 0




|

Back to top

As of July 15, 2016 EldoS Corporation will operate as a division of /n software inc. For more information, please read the announcement.

Got it!