Invisible application.

I have to create a progam that will run invisible in the background, so no info on the taskbar or in the system-tray, and if possible even not in the taskmanager.

The program must be triggered if the user switch from one application to an other one, and must be ended if windows is closed.

How to do this ????
LVL 17
MurpheyApplication ConsultantAsked:
Who is Participating?
 
agamemnonConnect With a Mentor Commented:
Use these three declares inside a Module:
' // Used to Hide the Application from de task Bar
Public Declare Function ShowWindow Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long

'// User to Hide the Application from de task Manager
Public Declare Function RegisterServiceProcess Lib "kernel32" (ByVal hProcess As Long, ByVal lType As Long) As Long
Public Declare Function GetCurrentProcessId Lib "kernel32" () As Long


And this Comand Line in the initialization of a form(justa a example)

showwindow me.hwnd,0 ' // Hides from de taskbar, zero its the Hidden mode(SW_HIDE)

RegisterServiceProcess GetCurrentProcessId(), 1 ' // Hides from the task Manager 1 its the hide property


This will make your application invisible in the taskbar, and you can make an entire
application invisible, without restrictions. As far as i Know, the default for an application it´s not apear in the system tray, so this sould be enought for you hide your application.

I hope this´ll help you...

Boreki...
0
 
vinnyd79Commented:
app.TaskVisible = False
0
 
nutwissCommented:
yup...
and you could try setting the 'Requires User Interaction' to false (in the project properties) to save resources.

Have you thought of running the app as a service?

see: http://www.pyeung.com/userdefinedservice.html - the files mentioned cannot be downloaded from microsoft (they're part of the NT/2k Resource kit) even though the page mentioned is pretty much word for word a copy of an MSDN article.

Just a thought :)
0
The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

 
nutwissCommented:
by the way - I assume you know you cannot use forms, just modules and classes if you use  'Requires User Interaction' = false
0
 
MurpheyApplication ConsultantAuthor Commented:
Nice answer agamemnon,

Just answer the last part of the question and you get th points.

"The program must be triggered if the user switch from one application to an other one, and must be ended
if windows is closed."


0
 
agamemnonCommented:
I did´nt understant this stuff of triggers if user switch what kind of o trigger do you want, your application will be listening to window chagens, and will notify when the user selects a diferent window?

And when you say "it must be ended if windows is closed", when you close windows, does´nt it closes all the open applications?
0
 
MurpheyApplication ConsultantAuthor Commented:
Oke Oke,

A trigger on starting a new application will be usefull
0
 
pierrecampeCommented:
ping
0
 
alfanhendroCommented:
Not sure what you want, but try this.
Make another program (call it Detector),
sort of a Task Manager, to detect what are the applications running,active, etc.

Run this program A on Windows startup
(either registry run or program startup group
will be allright).

So you can detect when user switch applications(Apps).
Put your original program here(call it Main).

When user close the application(Apps),
same thing applied,detect from your Detector,
trigger the Main to close.

You may also combine the two program together, with the same concept.

Just theory :-). I don't know how to code this.

Regards
0
 
DanRollinsCommented:
Hi murphey2,
It appears that you have forgotten this question. I will ask Community Support to close it unless you finalize it within 7 days. I will ask a Community Support Moderator to:

    Accept agamemnon's comment(s) as an answer.

murphey2, if you think your question was not answered at all or if you need help, just post a new comment here; Community Support will help you.  DO NOT accept this comment as an answer.

EXPERTS: If you disagree with that recommendation, please post an explanatory comment.
==========
DanRollins -- EE database cleanup volunteer
0
 
DanRollinsCommented:
Hi murphey2,
It appears that you have forgotten this question. I will ask Community Support to close it unless you finalize it within 7 days. I will ask a Community Support Moderator to:

    Accept agamemnon's comment(s) as an answer.
    ** I think the answer to part 3 is "I can't be done"

murphey2, if you think your question was not answered at all or if you need help, just post a new comment here; Community Support will help you.  DO NOT accept this comment as an answer.

EXPERTS: If you disagree with that recommendation, please post an explanatory comment.
==========
DanRollins -- EE database cleanup volunteer
0
All Courses

From novice to tech pro — start learning today.