Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 213
  • Last Modified:

Pass Data between separate exe's

I currently am passing data between two exe via temporary files that I create.  I would like to eliminate the need for the temporary files and pass the data in memory.  Is this possible? If so, how would I begin.  A small sample of two exe's sending data back and forth on the same PC would be appreciated.
0
dorinda
Asked:
dorinda
  • 4
  • 3
  • 2
  • +4
1 Solution
 
wpsjr1Commented:
There are three methods that come to mind to pass data between two applications.  SendMessage with WM_COPYDATA, which requires subclassing to get notification of the incomming message.  Memory mapped files which allow for sharing of memory between two apps.  And last, an AX EXE server.  The AX EXE can be accomplished with native VB code.  If you've done some subclassing SendMessage is probably the simplest.  Have you ever done any subclassing/api?
0
 
Ryan ChongCommented:
0
 
Ryan ChongCommented:
Hi, here is another one from MSDN:

HOWTO: Pass String Data Between Applications Using SendMessage

http://support.microsoft.com/support/kb/articles/Q176/0/58.asp

0
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 
superchookCommented:

Or how about plain old DDE, or IP sockets.

Both are widely documented, compatible with other apps, applicable in local and networked environments and free with VB.
0
 
Ryan ChongCommented:
then you can try Winsock or MSComm Control to handle this.
0
 
superchookCommented:
Errr,  Winsock is OK, but MSComm ???
0
 
Ryan ChongCommented:
As my slight comment, MSComm Control can be use to transmit data via its serial post.

From MSDN:
The MSComm control provides serial communications for your application by allowing the transmission and reception of data through a serial port.

I'd create some protocols using MSComm control to receive and transfer data when i was in college. So that's my opinion about using MSComm but it could be a bad solution..
0
 
superchookCommented:

OK, I was lead astray - by the original request to pass data between apps - as it seems a bit over the top to use 2x serial ports to talk between two apps on the same machine!

Let's fall-back to the other alternatives DDE & Sockets

Tally-Ho !
0
 
glass_cookieCommented:
Hi!

I've got the code to pass data from 1 app to another from the same PC using winsock but I forgot where I found it.  Email me at diamond_chip@hotmail.com and I'll pass you the code.

That's it!

glass cookie : )
0
 
ingemCommented:
If one of your exes is ActiveX exe (server) and another is standard exe(client) you can pass your data from client to server and backwards as parameters in methods and properties. It works well with simple data types and arrays of fixed and varying length.
Here is an example:
-------------------
Server exe has a class named C1
which has method getArray which returns data from server
as an array of varying length:

Public Sub getArray(A() as long,  UboundA as long)
'UboundA  - Upper index of array A
UboundA =10
redeem A(UboundA )

for i=1 to UboundA
'  .... Initializing of array A
next i
end sub
------------------
Client then makes call:
dim P() as long
dim n as long

C1.getArray(p(),n)

and then it gets data in P
To send data from client is even more simple.
 
0
 
wsh2Commented:
<ping>
0
 
dorindaAuthor Commented:
I like the winsock sample from glass_cookie.
0
 
wsh2Commented:
DORINDA or GLASS_COOKIE

Please Copy / Paste the code if you will.. <smile>>
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

  • 4
  • 3
  • 2
  • +4
Tackle projects and never again get stuck behind a technical roadblock.
Join Now