Click here to Skip to main content
Rate this: bad
good
Please Sign up or sign in to vote.
See more: C VB string convert
Hello,
 
I'm trying to convert a char* to a BSTR*, and my char* has special characters in it from being encrypted. I have tried several approaches found on the web, but back in the calling vb code, I always end up with something different. I'm pretty sure this has to do with the special characters, because if I don't have them in, it seems to be ok....
 
my code is something along these lines...
 
_export myFunction(BSTR *VBtextin, BSTR *VBpassword, BSTR *VBtextout, FPINT encrypt) {
 
BSTR password = SysAllocString (*VBpassword);
char* myChar;
myChar = (char*) password  //is this ok to cast? it seems to remain the same when i print out.

//then I encrypt the myChar in some function...and want to convert back to BSTR
//i've tried a few ways like below, and some other ways i've seen online...to no avail.

_bstr_t temp(myChar);
SysReAllocString(VBtextout, myChar);
 
Any help would be very very very much appreciated!!!
Thanks.
Posted 20-Apr-11 13:40pm
Edited 20-Apr-11 16:25pm
v2

1 solution

Rate this: bad
good
Please Sign up or sign in to vote.

Solution 1

No, you cannot cast a BSTR to a char*. Use ConvertBSTRToString.
 
See http://msdn.microsoft.com/en-us/library/ewezf1f6(v=VS.100).aspx[^]
  Permalink  

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



Advertise | Privacy | Mobile
Web03 | 2.8.1411022.1 | Last Updated 20 Apr 2011
Copyright © CodeProject, 1999-2014
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100