Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Access VFP tables encrypted with Cryptor from Ruby on Ra
Message
From
01/06/2014 16:39:52
 
 
To
01/06/2014 01:41:27
General information
Forum:
Visual FoxPro
Category:
Third party products
Environment versions
Visual FoxPro:
VFP 9 SP2
OS:
Windows Server 2012
Network:
Windows 2008 Server
Database:
MS SQL Server
Application:
Web
Miscellaneous
Thread ID:
01601057
Message ID:
01601079
Views:
85
>I need to access some VFP tables that are encrypted using Cryptor from Ruby on Rails
>
>From VFP it's done like this:
>
> Instantiate the Cryptor OLE object
> Tell the Cryptor object to expect calls from vfp ==> oCryptor.WatchDLL("vfp9r.dll")
> Tell the Cryptor object which tables are encrypted and the passwords
>
>VFP tables should be accessible from RoR using the VFPoledb object I believe
>
>The problem is I am a RoR newbie and don't know how to instantiate and use an OLE object or how to tell RoR to use the VFPOleDB object.

My understanding is RoR was originally developed on a non-Windows platform. OLE/ActiveX is Windows-only so base RoR won't support it. There may be an add-on for RoR deployed on Windows that supports it but you'd need to confirm that.

VFP and Cryptor are also Windows-only. Assuming you get past the hurdle above, your RoR deployment, VFP runtime, and Cryptor would almost certainly need to be on the same computer, and the encrypted VFP tables either on that same computer or accessible via Windows networking. That limits your deployment options but if you're doing this for a single client that may not be an issue.

It might be cleaner to create a Windows process (VFP EXE or something else) that can open the encrypted tables, and listen to and respond to requests using some web protocol such as http. That way the RoR deployment can live on a different computer (even running Linux). I imagine West Wind Web Connect or some part of it can do that. I think I've also seen code samples floating around that let a VFP EXE listen on a TCP port and respond to requests.

Another way to do something similar would be to copy the data that need to be secured in another DB product such as MySQL, which can then easily be accessed from RoR.
Regards. Al

"Violence is the last refuge of the incompetent." -- Isaac Asimov
"Never let your sense of morals prevent you from doing what is right." -- Isaac Asimov

Neither a despot, nor a doormat, be

Every app wants to be a database app when it grows up
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform