Explorer-Fenster anhand Name aktivieren, notfalls neu öffnen

  • VBScript

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von Mono.

    Explorer-Fenster anhand Name aktivieren, notfalls neu öffnen

    Hallo,

    ich habe unter WIN XP dieses VB Script im Einsatz, was 1 A läuft.

    Es wird geschaut, ob bereits ein Explorerfenster mit bestimmten Namen offen ist,
    wenn ja soll dieses aktiviert werden, notfalls neu geöffnet werden.

    Unter Windows 7 wird leider nicht mehr das bereits im Hintergrund offene Fenster erkannt,
    kann mir jemand helfen, wo der Fehler liegt?

    Windows 7 64bit macht nun lediglich Probleme.


    VB.NET-Quellcode

    1. Option Explicit
    2. Dim pc, programm, fenstername, path_proe_exports
    3. Dim wmi, system, process, objFSO, objTest, objFile
    4. Dim WshShell
    5. Set WshShell = CreateObject("WScript.Shell")
    6. Set wmi = GetObject("winmgmts:")
    7. Set system = wmi.instancesOf("win32_process")
    8. programm = "explorer.exe"
    9. path_proe_exports="C:\TEMP\path_proe_exports.tmp"
    10. Const ForReading = 1
    11. Set objFSO = CreateObject("Scripting.FileSystemObject")
    12. Set objTest = objFSO.GetFile(path_proe_exports)
    13. If objTest.Size > 0 Then
    14. Set objFile = objFSO.OpenTextFile(path_proe_exports, ForReading)
    15. fenstername = objFile.ReadAll
    16. wscript.echo fenstername
    17. objFile.Close
    18. end if
    19. WScript.Sleep 500
    20. For Each process In system
    21. If lcase(process.name)=programm Then
    22. WScript.Sleep 500
    23. WshShell.AppActivate fenstername
    24. Exit For
    25. End If
    26. Next
    27. If Not WshShell.AppActivate(fenstername) Then
    28. WshShell.Run programm & " /e," & fenstername
    29. End If
    Hi.


    Visual Basic-Quellcode

    1. WshShell.AppActivate fenstername



    Was ist denn fenstername?
    Unter Windows 7 geht das WshShell.AppActivate offensichtlich anders. Im Normalfall beim Explorer.exe mit dem Ordner in dem du gerade bist.
    Also AppActivate "Tools" für das Explorer Fenster wo du den Ordner Tools offen hast. Bei 2 mit gleichem Namen wirds schon mist.
    Das ist meine Signatur und sie wird wunderbar sein!