Re: SendMessage crashing

Tech-Archive recommends: Fix windows errors by optimizing your registry



On Sat, 30 Apr 2005 20:00:36 -0400, "Casey Provance"
<casey@xxxxxxxxxxx> wrote:

>Okay, I am going to throw this out here simply as a thought. I am writing
>this on the fly, so it's not been tested, nor do I even know if it will
>work.
>
>Couldn't you pass the pointer of your UDT to the other program and read the
>UDT from the pointer from there...using the a version of the RtlMoveMemory
>API? I've done something similiar to get a data structure from another
>process...maybe it could apply here as well?

Most definitely not. You'll earn an access violation error and the app
will be terminated. In Win32 the address space of each process is
~private~. The OS provides a number of alternate methods for
marshalling shared data cross-process including...
COM
WM_COPYDATA
DDE
Pipes Api functions
Api functions to create and manage a shared mem block manually.


-Tom
MVP - Visual Basic
(please post replies to the newsgroup)
.



Relevant Pages

  • Cant get lineTranslateAddress() to populate UDT - PLEASE HELP
    ... But only populates 4 of the values in the UDT. ... dwDisplayableStringSize As Long ... Heck they're all zeros except for the number string and the UDT pointer. ...
    (microsoft.public.win32.programmer.tapi)
  • Re: Mass delete files and directories
    ... of the pointer lpszProgressTitle are for some reason being ... I've only tried it out on a few Vista machines, and they very definitely do not store a pointer unless you have at some stage assigned a string value or an empty string. ... If you create a variable of a UDT and if that UDT contains a standard variable length string then VB will leave the four "string pointer" bytes filled with zeros unless you assign something to the string, or unless you have previously done so and it is not a "fresh copy". ... Even if those bytes contain a valid pointer to a string they will cause a serious problem, because the pointer in the UDT data which VB passes to the SHFileOperation function is not in the place where SHFileOperation expects it to be, and is in fact offset by two bytes because of the "Integer padding" I mentioned. ...
    (microsoft.public.vb.general.discussion)
  • Re: Cant get lineTranslateAddress() to populate UDT - PLEASE HELP
    ... But only populates 4 of the values in the UDT. ... I can make it work with the same values with TAPI Browser ... Heck they're all zeros except for the number string and the UDT pointer. ...
    (microsoft.public.win32.programmer.tapi)
  • Re: SymGetTypeInfo and TI_GET_DATAKIND
    ... > I succeed to manage base type, pointer, array and UDT. ... I don't know how to determine if a pointer is constant, ... pointers (it uses DbgHelp as its symbol engine), while VC debugger can. ... > DataIsConstant ...
    (microsoft.public.vsnet.debugging)