Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Using Crypto Class
Message
General information
Forum:
Visual FoxPro
Category:
Classes - VCX
Environment versions
Visual FoxPro:
VFP 9 SP2
OS:
Vista
Network:
Windows 2000 Pro
Database:
Visual FoxPro
Application:
Desktop
Miscellaneous
Thread ID:
01452254
Message ID:
01452481
Views:
45
Awesome, Borislav

Been messing about with this for so long, got a bit stir crazy, I forgot to set my fields to binary.

Last question, if I wanted to use a character field (binary of course), would this still work? Not a big fan of memo fields to be honest, they tend to go wronfg often & and seem to suffer bloat

>That workd for me:
>
>CLEAR
>CREATE CURSOR crsTest (Name M NOCPTRANS, nAME2 M nocptrans)
>oCrypto = Newobject("_cryptapi", HOME()+[FFC\_crypt.vcx])
>#DEFINE NOCSP_Lines_of_code "The required Crypto Service Provider is not installed or not functioning properly on this system."
>
>IF !OCrypto.GetIsInstalled()
>   MESSAGEBOX(NOCSP_Lines_of_code)
>   RETURN .F.
>ENDIF
>
>LOCAL lcEncryptedStream,lcPassword,lcKey
>lcEncryptedStream = ''
>lcDecryptedStream = ''
>
>lcPassWord = "Christine"
>lcKey      = "Secret Password"
>IF ocrypto.EncryptSessionStreamString(lcPassWord, lcKey, @lcEncryptedStream)
>
>ELSE
>   IF ocrypto._cryptapi.GetDoubleEncryptError()
>      MESSAGEBOX("Sorry, you cannot double-encrypt this text.")
>   ELSE
>      MESSAGEBOX("Error: "+MESSAGE())
>   ENDIF
>   RETURN
>ENDIF
>
>?lcEncryptedStream
>APPEND BLANK
>REPLACE name WITH STRCONV(lcEncryptedStream,15), nAME2 WITH lcPassWord
>lcfield=STRCONV(name,16)
>? lcfield
>? lcfield == lcEncryptedStream
>lcDecryptedStream = SPACE(200)
>mresult=ocrypto.DecryptSessionStreamString(lcfield, lcKey, @lcDecryptedStream)
>?lcDecryptedStream
>brow
>
>
>BTW you used EncryptSessionBlockString but DecryptSessionStreamString not DecryptSessionBlockString
Rob
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform