Go Premium for a chance to win a PS4. Enter to Win

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

Change the value of a textbox/label/etc from another program with Visual Basic...

I have a program with some controls on it.
I want to make another program that can change the values of a text box, for example in the first one. They will be two exe's.

can this be done via windows api functions?

wladq
0
wladq66
Asked:
wladq66
  • 2
  • 2
  • 2
1 Solution
 
drnickCommented:
i think so.
you need to these steps:

get in your "changer" app a handle to the editbox/lable (which both will be windows)
and then send the new text via SendMessage/PostMessage with WM_SETTEXT.

to get the handle can be messy, got to use stuff like FindWindow or GetForeGroundWindow or EnumWindows,

it could also be that you need to transfere your string into the other processes address space,
if so, you'll need VirtualAllocEx and WriteProcessMemory, however, i'm not sure of that.

to sum up, what you want to do is complicated, unsecure and version-compatibility-horror.
maybe try to work around this problem,
the use of normal IPC, shared memory or DDE or such will be safest.

hope i could helf anyway,
drnick.
0
 
CoolBreezeCommented:
why is there a need to transfer his string into the other process space?
I thought WM_SETTEXT will take care of that?

wladq66:
it would help if there is certain prominent characteristic for you to identify
the textbox you want.
0
 
wladq66Author Commented:
is it easier to just simulate clicking somewhere? [that would be alot of help].. to select a menu and click file->others->input [just as an examples].. then use wm_settext to set the text in the window it appears.
0
Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

 
CoolBreezeCommented:
to wm_settext, you need the handle of the window, so you still have to do it like what drnick says
0
 
wladq66Author Commented:
but if i need a button [normal one, not menu] and then click on the menu that apperas? or what about simulating clicking clicking on file->etc ?then what? could u help? i will increase thhe points
0
 
drnickCommented:
in that case it will maybe easier to simulate keystrokes with the
keybd_event-function.
i assume that you can control the program by keyboard-commands,
like the most common programs.
0

Featured Post

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.

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