[vb] sluiten msn programma

Pagina: 1
Acties:

  • Ye Greate'96
  • Registratie: Juli 2001
  • Laatst online: 12-08 07:28
Als systeembeheerder van onze school (met novell) wil ik het graag de leerlingen onmogelijk maken MSN te gebruiken.
Nu kan je dat proberen met poorten afsluiten, maar dan werkt hotmail ook niet meer, en da mag nie!
Het vervelende van MSN is dat de naam en install directory met elke nieuwe versie lijkt te veranderen. Mijn idee is geworden:

Zodra er een programma actief is met in de titel o.a. de txt "MSN": Sluit dit programma!

Nou, een programma sluiten waarvan je de hele titel weet is niet zo moeilijk:
iHwnd = FindWindow(0&, "WindowTitle")
iReturn = PostMessage(iHwnd, WM_QUIT, 0, 0&)

Maar ik weet niet de hele titel, ik weet slechts een gedeelte, namelijk "MSN".

Weet iemand hoe ik bijvoorbeeld een lijst met alle open window-namen kan creëren? Of misschien een andere manier, zoiets als MSN*?

Verwijderd

Dan werkt de MSN homepage ook niet meer!

Misschien helpt dit.

[ Voor 52% gewijzigd door Verwijderd op 10-11-2003 12:01 ]


Verwijderd

Ik ben student bij de hoge school inholland en de netwerk beheerders hadden het vorig jaar onmogelijk gemaakt om msn te gebruiken terwijl je wel op hotmail kon.
Mail anders deze gasten ff, misschien dat zij je kunnen helpen.

  • Ye Greate'96
  • Registratie: Juli 2001
  • Laatst online: 12-08 07:28
Verwijderd schreef op 10 november 2003 @ 11:58:
Dan werkt de MSN homepage ook niet meer!

Misschien helpt dit.
Daar heb je gelijk in, laten we de zoekterm veranderen naar "messenger"

  • Arunia
  • Registratie: Februari 2003
  • Laatst online: 07:22
Dat was wat ik ook precies wilde voorstellen. Aangezien het MSN Messenger heet.
Je kunt allicht proberen.

Succes, ik probeer al jaren MSN uit te zetten op mijn thuis pc, maar om één of andere domme reden kwam deze steeds weer terug. Lijkt net een virus :)

Ik hoop dat het je lukt, ik weet hoe iritant het kan zijn als leerlingen msn draaien. Of sowieso dingen doen die niet mogen. :P

  • King
  • Registratie: September 2001
  • Laatst online: 18-08 21:10

King

War. War never changes.

Misschien kan je wat nuttige informatie vinden in dit topic

Helemaal blokkeren gaat volgens mij nooit lukken, maar met het blokkeren van de msn servers en http-tunnels moet je toch een eind komen denk ik :)

  • curry684
  • Registratie: Juni 2000
  • Laatst online: 13-08 16:46

curry684

left part of the evil twins

Allereerst is het zoeken op windowname natuurlijk zo lek als een mandje, dan kun je nog beter zoeken op window classname (potentieel lek maar stukken minder lek)...

Mocht je toch Window-titels willen zoeken, gebruik EnumWindows om over alle toplevelwindows te loopen. Netter is om gewoon het msmsgs.exe proces te zoeken en te nuken.

edit:
Volgens mij is het trouwens op een Win2k domain ook een domain level policy of MSN gebruikt kan worden, maar daar ben ik niet helemaal zeker over...

[ Voor 20% gewijzigd door curry684 op 10-11-2003 12:15 ]

Professionele website nodig?


  • Ye Greate'96
  • Registratie: Juli 2001
  • Laatst online: 12-08 07:28
curry684 schreef op 10 november 2003 @ 12:13:
Allereerst is het zoeken op windowname natuurlijk zo lek als een mandje, dan kun je nog beter zoeken op window classname (potentieel lek maar stukken minder lek)...

Mocht je toch Window-titels willen zoeken, gebruik EnumWindows om over alle toplevelwindows te loopen. Netter is om gewoon het msmsgs.exe proces te zoeken en te nuken.

edit:
Volgens mij is het trouwens op een Win2k domain ook een domain level policy of MSN gebruikt kan worden, maar daar ben ik niet helemaal zeker over...
Ik kan er niet achter komen hoe dat ENUMWINDOWS werkt. Hoe krijg ik daarmee window titels tevoorschijn?

  • OZ-Gump
  • Registratie: November 2002
  • Laatst online: 26-06 10:37

OZ-Gump

terug van weggeweest

Zo uit een standaard API-viewer (of eender welke Windows API help :p)
The EnumWindows function enumerates all top-level windows on the screen by passing the handle of each window, in turn, to an application-defined callback function. EnumWindows continues until the last top-level window is enumerated or the callback function returns FALSE.
En in diezelfde API viewer staat ook nog een voorbeeldje! Heerlijk! ;)
Visual Basic .NET:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
'Add this code to a form
Private Sub Form_Load()
    Me.AutoRedraw = True
    EnumWindows AddressOf EnumWindowsProc, ByVal 0&
End Sub

'Add this code to a module
Declare Function EnumWindows Lib "user32" (ByVal lpEnumFunc As Long,
    ByVal lParam As Long) As Boolean

Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (
    ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long

Declare Function GetWindowTextLength Lib "user32" 
    Alias "GetWindowTextLengthA" (ByVal hwnd As Long) As Long

Public Function EnumWindowsProc(ByVal hwnd As Long, ByVal lParam As
    Long) As Boolean

    Dim sSave As String, Ret As Long
    Ret = GetWindowTextLength(hwnd)
    sSave = Space(Ret)
    GetWindowText hwnd, sSave, Ret + 1
    Form1.Print Str$(hwnd) + " " + sSave
    'continue enumeration
    EnumWindowsProc = True
End Function

[ Voor 59% gewijzigd door OZ-Gump op 10-11-2003 13:05 ]

My personal website


  • Noork
  • Registratie: Juni 2001
  • Niet online
Vergeet je dan ook niet om MSN klonen en webbased msn te blocken?

  • Ye Greate'96
  • Registratie: Juli 2001
  • Laatst online: 12-08 07:28
OZ-Gump schreef op 10 november 2003 @ 13:00:
Zo uit een standaard API-viewer (of eender welke Windows API help :p)
[...]
En in diezelfde API viewer staat ook nog een voorbeeldje! Heerlijk! ;)
Visual Basic .NET:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
'Add this code to a form
Private Sub Form_Load()
    Me.AutoRedraw = True
    EnumWindows AddressOf EnumWindowsProc, ByVal 0&
End Sub

'Add this code to a module
Declare Function EnumWindows Lib "user32" (ByVal lpEnumFunc As Long,
    ByVal lParam As Long) As Boolean

Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (
    ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long

Declare Function GetWindowTextLength Lib "user32" 
    Alias "GetWindowTextLengthA" (ByVal hwnd As Long) As Long

Public Function EnumWindowsProc(ByVal hwnd As Long, ByVal lParam As
    Long) As Boolean

    Dim sSave As String, Ret As Long
    Ret = GetWindowTextLength(hwnd)
    sSave = Space(Ret)
    GetWindowText hwnd, sSave, Ret + 1
    Form1.Print Str$(hwnd) + " " + sSave
    'continue enumeration
    EnumWindowsProc = True
End Function
Bedankt!
Precies wat ik zocht.

  • teigetjuh
  • Registratie: September 2000
  • Niet online
Verwijderd schreef op 10 november 2003 @ 12:03:
Ik ben student bij de hoge school inholland en de netwerk beheerders hadden het vorig jaar onmogelijk gemaakt om msn te gebruiken terwijl je wel op hotmail kon.
Mail anders deze gasten ff, misschien dat zij je kunnen helpen.
FF een beetje offtopic, of misschien ook niet. Maar je kan de poorten afsluiten waar MSN over heen draait. Dan kun je dus wel hotmail benaderen (loopt tenslotte over http/https (80/443)) Dat is wat er inverband met diverse virussen tijdelijk hier op inholland is gedaan.

Was uit mijn hoofd ergens iets van port 1845 of 1745, maar weet het niet meer zeker.

[ Voor 7% gewijzigd door teigetjuh op 10-11-2003 13:39 . Reden: toevoeging ]


  • curry684
  • Registratie: Juni 2000
  • Laatst online: 13-08 16:46

curry684

left part of the evil twins

teigetjuh schreef op 10 november 2003 @ 13:37:
[...]
FF een beetje offtopic, of misschien ook niet. Maar je kan de poorten afsluiten waar MSN over heen draait. Dan kun je dus wel hotmail benaderen (loopt tenslotte over http/https (80/443)) Dat is wat er inverband met diverse virussen tijdelijk hier op inholland is gedaan.

Was uit mijn hoofd ergens iets van port 1845 of 1745, maar weet het niet meer zeker.
MSN draait op 1863 maar zal indien hij daar niet over kan connecten als fallback proberen te connecten op poort 80. Je kunt dus niet op poort blocken.

Professionele website nodig?


Verwijderd

Je kan msn messenger ook gewoon uitzetten door een registry key aan te passen. Dit is voldoende om het gros van de gebruikers van msn messenger af te helpen

http://www.updatexp.com/disable-messenger-msn.html

[ Voor 15% gewijzigd door Verwijderd op 10-11-2003 14:10 ]


  • teigetjuh
  • Registratie: September 2000
  • Niet online
curry684 schreef op 10 november 2003 @ 13:47:
[...]

MSN draait op 1863 maar zal indien hij daar niet over kan connecten als fallback proberen te connecten op poort 80. Je kunt dus niet op poort blocken.
Als je proxy niet op poort 80 draait, is het blocken van port 1863 dus voldoende.
Pagina: 1