Solved

Invisible application.

Posted on 2002-04-18
11
219 Views
Last Modified: 2010-05-02
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 ????
0
Comment
Question by:theo kouwenhoven
  • 2
  • 2
  • 2
  • +4
11 Comments
 
LVL 28

Expert Comment

by:vinnyd79
Comment Utility
app.TaskVisible = False
0
 
LVL 4

Expert Comment

by:nutwiss
Comment Utility
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
 
LVL 4

Expert Comment

by:nutwiss
Comment Utility
by the way - I assume you know you cannot use forms, just modules and classes if you use  'Requires User Interaction' = false
0
 

Accepted Solution

by:
agamemnon earned 200 total points
Comment Utility
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
 
LVL 16

Author Comment

by:theo kouwenhoven
Comment Utility
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
IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

 

Expert Comment

by:agamemnon
Comment Utility
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
 
LVL 16

Author Comment

by:theo kouwenhoven
Comment Utility
Oke Oke,

A trigger on starting a new application will be usefull
0
 
LVL 6

Expert Comment

by:pierrecampe
Comment Utility
ping
0
 
LVL 1

Expert Comment

by:alfanhendro
Comment Utility
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
 
LVL 49

Expert Comment

by:DanRollins
Comment Utility
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
 
LVL 49

Expert Comment

by:DanRollins
Comment Utility
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

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

Introduction While answering a recent question (http://www.experts-exchange.com/Q_27402310.html) in the VB classic zone, I wrote some VB code in the (Office) VBA environment, rather than fire up my older PC.  I didn't post completely correct code o…
When trying to find the cause of a problem in VBA or VB6 it's often valuable to know what procedures were executed prior to the error. You can use the Call Stack for that but it is often inadequate because it may show procedures you aren't intereste…
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
This lesson covers basic error handling code in Microsoft Excel using VBA. This is the first lesson in a 3-part series that uses code to loop through an Excel spreadsheet in VBA and then fix errors, taking advantage of error handling code. This l…

772 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now