Autor Beitrag
ShadowCaster
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 312



BeitragVerfasst: Mi 21.05.03 13:22 
Sorry leute, dass ich hier schon wieder frag. Ja ich weiß, ich frag mehr als ich helfe! Werd ich ab jetzt mal seinlassen. Das ist erstmal der letzte Fragethread hier.

Es geht darum dass ich zwar weiß, wie ich den Explorer abschießen kann, aber nicht wie ich sein Handle ermitteln kann.

Ich brauche folgende Funktion:

sie soll den Explorer terminieren
dann den Explorer neu starten

Tut mir leid, aber ich stell mich auf dem Gebiet der Handle-Ermittlung noch etwas (sehr) dumm an :cry:

Wäre dankbar für Hilfe.
AndyB
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1173
Erhaltene Danke: 14


RAD Studio XE2
BeitragVerfasst: Mi 21.05.03 14:11 
ShadowCaster hat folgendes geschrieben:
Sorry leute, dass ich hier schon wieder frag. Ja ich weiß, ich frag mehr als ich helfe! Werd ich ab jetzt mal seinlassen. Das ist erstmal der letzte Fragethread hier.

Die stellst du jetzt in einem anderen Forum? :lol:


Zitat:
Es geht darum dass ich zwar weiß, wie ich den Explorer abschießen kann, aber nicht wie ich sein Handle ermitteln kann.

Du weißt wie man den Explorer abschießt, aber das Handle bekommst du nicht? Da wiederspricht sich doch was. Sollte der Satz vielleicht eher so lauten:
Es geht darum dass ich zwar weiß, wie ich Programme allgemein abschießen kann, aber nicht wie ich das Handle des Explorers ermitteln kann.


Du könntest die ToolHelp32 Funktionen Benutzen um alle Prozesse auszulisten und deren ProcessId und ProcessHandle zu erlangen. Die ToolHelp32 (TlHelp32.pas) funktioniert nur unter Win9x/ME/2000/XP (kein NT)

_________________
Ist Zeit wirklich Geld?
ShadowCaster Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 312



BeitragVerfasst: Mi 21.05.03 15:09 
ich will nicht Anwendungen im allgemeinen abschießen, sondern eigentlich nur den Explorer und NT wäre wichtig, weil ich gern alle Betriebssysteme unterstützen würde. Der Handle ist ein DWORD-Wert. Wenn ich jetzt den Namen "Explorer" als DWORD caste, was kommt da nur für ein Müll raus? Es geht darum den HANDLE zu ermitteln wenn ich nur den Applikationsnamen hab. wo ist das der Wiederspruch?
matze
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 4613
Erhaltene Danke: 24

XP home, prof
Delphi 2009 Prof,
BeitragVerfasst: Mi 21.05.03 15:49 
auch mal hier im forum nach dem titel explorer verbieten. autor bin ich !! das müsste dir helfen !

_________________
In the beginning was the word.
And the word was content-type: text/plain.
ShadowCaster Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 312



BeitragVerfasst: Mi 21.05.03 16:01 
ist das so schlimm wenn ich den terminieren will? Ist das eine Straftat? hmm? Bin icht so bescheuert und missbrauche das für schlechte Zwecke? Was hab ich davon eine Anwendung auf dem PC eines anderen abzuschießen? Ihr habt echt Vorstellungen von Delphi-Entwicklern. Ich mache gerade eine Ausbildung zum Fachinformatiker und ich möchte sehr viel (auch) über hardware und Betriebssytemnahe Programmierung lernen, damit ich alle Chancen offen hab. Wenn ich wegen so einem Titel schon eine Moralpredigt (wenn sie auch nur von 2 Leuten war) gehalten bekomm, dann läuft in dem Forum was falsch.

Das ist ganz ehrlich meine Meinung davon :x

In meinen anderen Therads sollte wohl ersichtlich sein, wofür ich die Funktion benötige.

Dann hätte man auch von anfang an die Forschung an Atomenergie verbieten müssen. Dann wären ein paar hunderttausend Menschen weniger gestorben. Aber ich will damit sagen, Atomenergie lässt sich auch positiv einsetzen.

Genauso wie ein Virus eine Anwendung terminieren kann (z.B. den Explorer) kann ich hergehen und den Explorer terminieren wenn ich weiß, dass sich der Virus an den Explorerprozess in den Ram gehängt hat. Somit ist es mir möglich den Virus zu stoppen.
Pascal
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 155

Win 98, Win XP
Delphi 2005, Delphi 5
BeitragVerfasst: Mi 21.05.03 16:15 
mal rein aus Interesse Wer hat eigendlich gesagt das das schlimm ist den Explorer zu terminieren. Habe ich nirgends gefunden.
Deine Frage lässt sich wie Matze schon sagt gut mit der Antwort auf seine Frage beantworten.





Da hat jemand ne gute Antwort gefunden *Eigenlob* :D
ShadowCaster Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 312



BeitragVerfasst: Mi 21.05.03 16:21 
matze meinte: auch mal hier im forum nach dem titel explorer verbieten

und oben wurd gesagt, dass ich mir widersprechen würde und es wurd mir unterstellt ich wolle allgemein alle Programme abschießen wollen. Ich will jedoch nichts abschießen, sondern neu in den Ram laden. Dazu muss ich terminieren.

Egal... ich brauch ne Antwort am Besten mit Sourcecode, die auch unter NT läuft. Und bitte lasst Zitate auf dieses Posting, auch falls ich was falsch verstanden haben sollte. Solche Zitate haben noch in keinem Thread des Forums was gebracht, weil die immer noch von den Leuten kamen, die Recht haben wollten, also bitte keine Zitate, ok?
AndyB
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1173
Erhaltene Danke: 14


RAD Studio XE2
BeitragVerfasst: Mi 21.05.03 16:27 
ShadowCaster hat folgendes geschrieben:
Ich mache gerade eine Ausbildung zum Fachinformatiker

Woher wusste ich das schon bevor du das hier gepostet hast? Ach ja NeoBrothers.de. :wink:


Zitat:
Wenn ich wegen so einem Titel schon eine Moralpredigt (wenn sie auch nur von 2 Leuten war) gehalten bekomm

Wo habe ich dir eine Modralpredigt gehalten? *sein posting noch mal liest*


Zitat:
In meinen anderen Therads sollte wohl ersichtlich sein, wofür ich die Funktion benötige.

Ist sie auch. Du möchstet den verseuchten Windows Explorer abschießen, damit der Virus nicht beim säubern zuschaut. Dein Programm könnte den Virus aber bereits intus haben und dann schaut er eben von deinem Programm aus zu.



Hast du schon FindWindow('Program', 'Program Manager') für die Taskbar und FindWindow('ExploreWClass', nil) für den "Datei" Exporer benutzt?

_________________
Ist Zeit wirklich Geld?
ShadowCaster Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 312



BeitragVerfasst: Mi 21.05.03 17:00 
lol... Neobrothers... ich sag nix ;)

naja mit der Moralpredigt das war von mir etwas überzogen. Würd nur gern sachlich drüber diskutieren. Allerdings bringt uns dein Posting auch nicht näher an die Lösung. Zudem müsstest du wissen dass ich nicht so dumm bin und mein Programm nicht während des Ausführens auf Infektion teste. Also wie ermittle ich das Handle auf den Explorer? und terminiere in richtig? Neu starten müsste ja über Shellexecute gehen.

Wenn ihr mir helft, werd ich in meinen Virenscanner auch diejenigen unter Special thanks mit Emailadresse und Homepage eintragen, die mir geholfen haben. Könnte ne ganz gute Werbung für euch werden. Ich hab mittlerweile über 40 Anfragen mit insgesamt 300 infizierten PC's und rund 150000 infizierte Exefiles. Darunter sind auch größere Firmen und ich will endlich mal was gutes tun und den Virusremover fertig kriegen. Das ist eigentlich noch so das einzigste was fehlt...
AndyB
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1173
Erhaltene Danke: 14


RAD Studio XE2
BeitragVerfasst: Mi 21.05.03 17:18 
AndyB hat folgendes geschrieben:
Hast du schon FindWindow('Program', 'Program Manager') für die Taskbar und FindWindow('ExploreWClass', nil) für den "Datei" Exporer benutzt?

Hast du das überlesen, oder hilft es dir nicht?
Wenn du anstatt dem Fensterhandle das ProzessHandle brauchst, kannst du ja die API GetWindowThreadProcessId und OpenProcess zu Rate ziehen.

_________________
Ist Zeit wirklich Geld?
Tino
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Veteran
Beiträge: 9839
Erhaltene Danke: 45

Windows 8.1
Delphi XE4
BeitragVerfasst: Mi 21.05.03 23:29 
Hallo!

ShadowCaster hat folgendes geschrieben:
Wenn ich wegen so einem Titel schon eine Moralpredigt (wenn sie auch nur von 2 Leuten war) gehalten bekomm, dann läuft in dem Forum was falsch.

Bitte ließ dir noch mal das gesammte Topic durch. Ich glaube du hast die Antworten ein wenig falsch verstanden!

Gruß
Tino
ShadowCaster Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 312



BeitragVerfasst: Do 22.05.03 11:10 
Das glaub ich auch aber

FindWindow('Program', 'Program Manager') für die Taskbar und FindWindow('ExploreWClass', nil)

?? Program Manager? Ich dachte der wär seid Windows 98 tot! Ich werds versuchen.
Udontknow
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2596

Win7
D2006 WIN32, .NET (C#)
BeitragVerfasst: Do 22.05.03 11:44 
Hi!

Nur um die emotionalen Fronten zu klären:

Matze schrieb "auch mal hier im forum nach dem titel explorer verbieten."

Das ist recht unsinnig und klingt, als ob im DF solche Threads gelöscht werden sollten. Er hat einfach das Wort "suchen" vergessen, und Anführungsstriche wären auch nicht schlecht gewesen.

Auch mal hier im forum nach dem titel "explorer verbieten" suchen.

Cu, :)
Udontknow
AndyB
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1173
Erhaltene Danke: 14


RAD Studio XE2
BeitragVerfasst: Do 22.05.03 11:57 
ShadowCaster hat folgendes geschrieben:
?? Program Manager? Ich dachte der wär seid Windows 98 tot!

Bei Delphi (ab Pro) ist das (uralte) Programme WinSight dabei. Damit kannst du neben dem WindowText auch den ClassName aller Fenster ermitteln. Und du wirst staunen, dass es eine Fensterklasse "Program" gibt, die als WindowText "Program Manager" hat. Das heißt aber nicht, dass es sich dabei um den Programm Manager (Progman.exe) von Windows 3.1x handelt.

_________________
Ist Zeit wirklich Geld?
Motzi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2931

XP Prof, Vista Business
D6, D2k5-D2k7 je Prof
BeitragVerfasst: Do 22.05.03 12:41 
@AndyB: die Fensterklasse heißt "Progman" und nicht "Program" (nur um weitere Missverständnise auszuschließen.. :roll:)

@ShadowCaster: falls du keine Pro oder Enterprise Version hast kannst du statt WinSight auch meinen X-Spy verwenden: www.x-spy.net (bisschen Eigenwerbung schadet nie ;) )

_________________
gringo pussy cats - eef i see you i will pull your tail out by eets roots!
ShadowCaster Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 312



BeitragVerfasst: Do 22.05.03 13:12 
Motzi, ich werde darauf zurückkommen :)

Danke nochmal an alle die mir so fleißig geholfen haben... :wave: