Deutsches AutoHotkey Homepage AutoHotkey Community
Wir helfen uns gegenseitig aus der Patsche
 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Remotedesktopverwaltung

 
Neues Thema eröffnen   Neue Antwort erstellen    AutoHotkey Community Foren-Übersicht -> Skripte & Funktionen
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Dr_Mitch



Anmeldedatum: 30.10.2006
Beiträge: 6

BeitragVerfasst am: Di Okt 31, 2006 4:59 pm    Titel: Remotedesktopverwaltung Antworten mit Zitat

Hi Leute

Hab ein kleines Programm zur Verwaltung von Remotedesktopverbindungen erstellt:

RDV.ahk
Code:
; @ Mitch 2006

#SingleInstance,Force
StringTrimRight,applicationname,A_ScriptName,4
;Inifile definieren
InifileSettings=RDVSettings.ini
;Inifile ueberpruefen
IfNotExist,%InifileSettings%
{
  MsgBox,16,Error,%InifileSettings% nicht vorhanden!`nProgramm wird beendet!
  ExitApp
}
;Settings aus Inifile laden
Gosub IniSettingsladen
;Inifile laden
Gosub, Iniladen
;Menu laden
Gosub,TRAYMENU
;Gui laden
Gosub,GUI
Return

IniSettingsladen:
IniRead, Programmname, %InifileSettings%, Settings, Programmname
IniRead, Inifileeditor, %InifileSettings%, Settings, Inifileeditor
IniRead, InifileServers, %InifileSettings%, Settings, InifileServers
;Inifile ueberpruefen
IfNotExist,%InifileServers%
{
  MsgBox,16,Error,%InifileServers% nicht vorhanden!`nBitte Settings in der INI Datei überprüfen!
  Gosub Settings
  ExitApp
}
return

Iniladen:
;Serverfile Daten ermitteln
FileRead, FileContent, %InifileServers%
Sections=
Loop, Parse, FileContent, `n, `r
{
   if InStr(A_LoopField, "[")
   {
      StringReplace, Section, A_LoopField, [
      StringReplace, Section, Section, ]
      Sections = %Sections%%Section%|
   }
}
Return


GUI:
Gui, Add, DropDownList, x16 y17 w210 h10 r30 Sort gLaenderSub vLaenderVar, %Sections%
Gui, Add, DropDownList, x16 y47 w210 h21 r30 Sort gStandortSub vStandortVar,
Gui, Add, ListBox, x16 y77 w210 h230 Sort gServerSub vServerVar,
Gui, Add, CheckBox, x16 y367 w210 h20 Checked vConsolenmodusVar, Consolenmodus
Gui, Add, Button, x66 y397 w110 h30 gVerbindenSub Default, Verbinden
Gui, Add, Edit, x16 y337 w210 h20 vServername WantReturn,
Gui, Add, Text, x16 y317 w210 h20 , Server/PC- Name
Gui, Show, x1411 y93 h442 w248, Remotedesktopverwaltung
GuiShowVar = 1
Return

TRAYMENU:
Menu, Tray, Click, 1
Menu, Tray, Icon, Shell32.dll, 165
Menu,Tray,NoStandard
Menu,Tray,DeleteAll
Menu,Tray,Add,%applicationname%,ABOUT
Menu,Tray, Add,
Menu,Tray,Add,Settings bearbeiten,Settings
Menu,Tray,Add,Server bearbeiten,Server
Menu,Tray,Add,Show Gui,GuiShow
Menu,Tray,Check,Show Gui
Menu,Tray, Add,
Menu,Tray, Add,Programm neu laden, Restart
Menu,Tray,Add,Exit,Exitprogramm
Menu,Tray,Default,Show Gui
Menu,Tray,Tip,%applicationname%
Return

LaenderSub:
GuiControlGet, LaenderVar
GuiControl,, StandortVar, |
GuiControl,, ServerVar, |
GuiControl,, ServerName,
loop, Read, %InifileServers%
{
  if A_LoopReadLine contains [%LaenderVar%]
  {
    startWrite = 1
    continue
  }
 
  if startWrite = 1
  {
    if A_LoopReadLine contains [
      break
   
    if A_LoopReadline contains `;
      continue                         
     
    Loop, parse, A_LoopReadLine, =   
    {
      key = %A_LoopField%
      allekeys:= (allekeys . key . "|")
      break
    }
     
  }
}
GuiControl, , StandortVar, %allekeys%
allekeys=
startwrite=
Return

StandortSub:
GuiControlGet, StandortVar
GuiControl,, ServerVar, |
GuiControl,, ServerName,
IniRead, ServerVarDaten, %InifileServers%, %LaenderVar% , %StandortVar%
GuiControl,, ServerVar, %ServerVarDaten%
Return

ServerSub:
GuiControlGet, ServerVar
GuiControl,, ServerName,
GuiControl,, ServerName, %ServerVar%
Return

VerbindenSub:
GuiControlGet, ServerName
GuiControlGet, ConsolenmodusVar
IfEqual, ConsolenmodusVar, 1, Run, %Programmname% /console /v:%ServerName%
IfEqual, ConsolenmodusVar, 0, Run, %Programmname% /v:%ServerName%
Gui, Hide
Menu,Tray,ToggleCheck,Show Gui
GuiShowVar=0
Return

GuiShow:
If GuiShowVar=1
  {
  Gui, Hide
  GuiShowVar=0
  }
Else If GuiShowVar=0
  {
  Gui, Show
  GuiShowVar = 1
  }
Menu,Tray,ToggleCheck,Show Gui
Return

ABOUT:
about=by Mitch @2006`n
MsgBox,0,Remotedesktopverwaltung,%about%
about=
Return

GuiClose:
Gui, Hide
Menu,Tray,ToggleCheck,Show Gui
GuiShowVar=0
Return

Settings:
Run, %Inifileeditor% %InifileSettings%
Return

Server:
Run, %Inifileeditor% %InifileServers%
Return

Restart:
Reload

Exitprogramm:
Exitapp


Damit das Programm funktioniert benötigt man noch zwei Inifiles:
RDVSettings.ini:
Code:
[Settings]
Programmname="C:\Programme\Remote Desktop\mstsc.exe /w:1024 /h:768"
Inifileeditor="C:\Programme\PSPad editor\PSPad.exe"
InifileServers=RDVServers.ini


sowie RDVServers.ini (siehe Settingsfile)
Code:
[Land]
Standort=server1|server2|..
Standort2=server1|server2|..

[[Land2]
Standort=server1|server2|..
Standort2=server1|server2|..



Hoffe ich habe keinen Fehler eingebaut und jemand kann das Skript gut gebrauchen.
Verwalte derzeit ca. 50 Server mit dem Programm.
mfg
Mitch
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    AutoHotkey Community Foren-Übersicht -> Skripte & Funktionen Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de