Click here to Skip to main content
15,886,919 members
Home / Discussions / C#
   

C#

 
AnswerRe: ICustomMarshaler not returning an Out parameter Pin
Luc Pattyn21-Jan-16 15:18
sitebuilderLuc Pattyn21-Jan-16 15:18 
GeneralRe: ICustomMarshaler not returning an Out parameter Pin
mavl21-Jan-16 23:08
mavl21-Jan-16 23:08 
GeneralRe: ICustomMarshaler not returning an Out parameter Pin
Luc Pattyn22-Jan-16 4:40
sitebuilderLuc Pattyn22-Jan-16 4:40 
GeneralRe: ICustomMarshaler not returning an Out parameter Pin
mavl22-Jan-16 8:58
mavl22-Jan-16 8:58 
GeneralRe: ICustomMarshaler not returning an Out parameter Pin
Luc Pattyn22-Jan-16 9:10
sitebuilderLuc Pattyn22-Jan-16 9:10 
GeneralRe: ICustomMarshaler not returning an Out parameter Pin
mavl22-Jan-16 23:15
mavl22-Jan-16 23:15 
GeneralRe: ICustomMarshaler not returning an Out parameter Pin
Luc Pattyn23-Jan-16 0:43
sitebuilderLuc Pattyn23-Jan-16 0:43 
GeneralRe: ICustomMarshaler not returning an Out parameter Pin
mavl23-Jan-16 2:49
mavl23-Jan-16 2:49 
1. Thanks for the links.

3. Already done as I replied to Gerry.

2. I don't want to make ref IntPtr, Marshal does that and I don't want it.
When using my ICustomMarshaler and sending pDataOut as normal, so no ref or out, the MarshalNativeToManaged works fine, just the result doesn't get used because I don't send pDataOut as ref or out.
If you then change the pDataOut to a ref, the MarshalNativeToManaged fails. Why? Because the IntPtr coming in to the method actually contains the dwLength, the amount of bytes, the first field of the struct. This can only happen when Marshal sends the IntPtr as ref, and the native code expects a pointer to the struct, not a pointer to the pointer. So it overwrites the IntPtr with the first field, and it overwrites the next 4 or 8 bytes (32 or 64 bit) with the pointer to the bytes. This last thing is actually memory corruption.
AnswerRe: ICustomMarshaler not returning an Out parameter Pin
Gerry Schmitz21-Jan-16 16:03
mveGerry Schmitz21-Jan-16 16:03 
GeneralRe: ICustomMarshaler not returning an Out parameter Pin
mavl21-Jan-16 23:32
mavl21-Jan-16 23:32 
QuestionHow to redirect the weburl to particular country when user types in Browser. Pin
pradeep yajamanam21-Jan-16 1:52
pradeep yajamanam21-Jan-16 1:52 
AnswerRe: How to redirect the weburl to particular country when user types in Browser. Pin
Dave Kreskowiak21-Jan-16 4:54
mveDave Kreskowiak21-Jan-16 4:54 
AnswerRe: How to redirect the weburl to particular country when user types in Browser. Pin
Richard MacCutchan21-Jan-16 5:03
mveRichard MacCutchan21-Jan-16 5:03 
AnswerRe: How to redirect the weburl to particular country when user types in Browser. Pin
Gerry Schmitz21-Jan-16 8:34
mveGerry Schmitz21-Jan-16 8:34 
Questiongetting country from phone number Pin
Asrour20-Jan-16 10:46
Asrour20-Jan-16 10:46 
AnswerRe: getting country from phone number Pin
Richard Andrew x6420-Jan-16 11:32
professionalRichard Andrew x6420-Jan-16 11:32 
GeneralRe: getting country from phone number Pin
Asrour20-Jan-16 11:40
Asrour20-Jan-16 11:40 
GeneralRe: getting country from phone number Pin
Richard Deeming21-Jan-16 2:20
mveRichard Deeming21-Jan-16 2:20 
GeneralRe: getting country from phone number Pin
PIEBALDconsult20-Jan-16 11:59
mvePIEBALDconsult20-Jan-16 11:59 
GeneralRe: getting country from phone number Pin
Asrour20-Jan-16 12:01
Asrour20-Jan-16 12:01 
SuggestionRe: getting country from phone number Pin
Sascha Lefèvre20-Jan-16 12:08
professionalSascha Lefèvre20-Jan-16 12:08 
GeneralRe: getting country from phone number Pin
Asrour20-Jan-16 12:21
Asrour20-Jan-16 12:21 
GeneralRe: getting country from phone number Pin
Sascha Lefèvre20-Jan-16 12:26
professionalSascha Lefèvre20-Jan-16 12:26 
GeneralRe: getting country from phone number Pin
Asrour20-Jan-16 12:31
Asrour20-Jan-16 12:31 
GeneralRe: getting country from phone number Pin
Sascha Lefèvre20-Jan-16 12:37
professionalSascha Lefèvre20-Jan-16 12:37 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.