Hi,
mit _FileReadToArray & _FileWriteFromArray solltes du eigentlich weiterkommen. Ansonsten poste doch einmal dein bisheriges Skript.
Gruss
eddy_erpel
Hi,
mit _FileReadToArray & _FileWriteFromArray solltes du eigentlich weiterkommen. Ansonsten poste doch einmal dein bisheriges Skript.
Gruss
eddy_erpel
Hi,
also in meiner Hilfe zu RegWrite/RegRead steht
ZitatIt is possible to access remote registries by using a keyname in the form "\\computername\keyname". To use this feature you must have the correct access rights on NT/2000/XP/2003, or if you are using a 9x based OS the remote PC must have the remote registry service installed first (See Microsoft Knowledge Base Article - 141460).
Vielleicht fälls mir noch was ein, wie man die SID ermitteln kann...
Edit:
SID ermitteln
$strComputer = "."
$objWMIService = ObjGet("winmgmts:\\" & $strComputer & "\root\cimv2")
$username="Username"
$domain=@LogonDomain
$objAccount = $objWMIService.Get ("Win32_UserAccount.Name='" & $username & "',Domain='" & $domain & "'")
;MsgBox("","",$objAccount.SID)
Gruss
eddy_erpel
Hi,
RegRead -Write ist auch möglich für Remote PCs.
Damit Du den Wert unter den entsprechenen Reg-Key schreiben kannst, musst du aber wie richtig vermutet die SID des User kennen.
Gruss
eddy_erpel
Hi,
freut mich dass es Dir geholfen hat...
Es ist schon richtig die Styles anzupassen, damit D&D für das entsprechende Control aktiviert ist. Dann muss man es nur noch auswerten ($msg=$GUI_event_dropped).
Ein Element aus der Listboy zu entfernen über GUIICtrlSetData ist etwas zu umständlich. Da bietet sich die Funktion _GUICtrlListDeleteItem besser an...
Zum Ini-File einlesen: Ist ev. im Ini-File ein Fehler vorhanden???? (Ansonsten müsste es eigentlich funktionieren)
Gruss
eddy_erpel
Hi Greenhorn,
Damit startet bei Skript vor ScitTe...:
#cs ----------------------------------------------------------------------------
AutoIt Version: 3.2.4.9
Author: Greenhorn
Script Function:
Auto(It)-Updater v1.0.3
#ce ----------------------------------------------------------------------------
#Region AutoIt3Wrapper directives section
#AutoIt3Wrapper_icon=E:\AutoIt Projekte\Icons\au3.ico
#AutoIt3Wrapper_res_comment=Automatischer Updater für AutoIt
#AutoIt3Wrapper_res_description=Updater für AutoIt
#AutoIt3Wrapper_res_fileversion=1.0.2.0
#EndRegion
#NoTrayIcon
#include <INet.au3>
#include <String.au3>
;ShellExecute(@ProgramFilesDir & "\AutoIt3\SciTE\SciTE.exe")
RegWrite("HKLM\Software\Classes\AutoIt3Script\Shell\Edit\Command","","REG_SZ",'"' & @ScriptFullPath & '" "%1"')
RegWrite("HKLM\Software\Classes\AutoIt3Script\Shell\Open\Command","","REG_SZ",'"' & @ScriptFullPath & '" "%1"')
if $cmdline[0]<>0 Then
run(RegRead("HKLM\Software\AutoIt v3\Autoit","InstallDir") & "\SciTE\Scite.exe " & $cmdline[1]) ;Start SciTE
EndIf
Opt("TrayAutoPause", 0)
Opt("TrayMenuMode", 1)
HotKeySet("{LCTRL}+{UP}", "_UpdateCheck") ; Left Control + Arrow Up drücken um auf Updates zu prüfen
Dim $CurrentFileVersion
Dim $NewFileVersion
Do ; Update Automatik - Einmal pro Stunde
If @MIN = 59 Then _UpdateCheck()
Until ProcessExists("SciTE.exe") = 0
Exit
Func _UpdateCheck()
$Ping = Ping("www.AutoItScript.com", 250)
If $Ping Then
$CurrentFileVersion = FileGetVersion(@ProgramFilesDir & "\AutoIt3\AutoIt3.exe")
;MsgBox(64, "Dateiversion", "AutoIt Version " & $CurrentFileVersion)
$Source = _INetGetSource("http://www.autoitscript.com/autoit3/downloads.php")
If StringInStr($Source, "autoit-v" & $CurrentFileVersion & "-setup.exe") Then
Sleep(60000)
Else
$NewFileVersion = _StringBetween($Source, "autoit-v", "-setup.exe")
$WhatToDo = MsgBox(68, "AutoIt Updates", "Es sind Updates vorhanden!" & @CRLF & "" & @CRLF & "Installierte Version: AutoIT v" & $CurrentFileVersion & @CRLF & "" & @CRLF & "Verfügbare Version: AutoIT v" & $NewFileVersion[0] & @CRLF & "" & @CRLF & "Updates herunterladen ?")
Select
Case $WhatToDo = 6 ; Ja, Updates herunterladen
InetGet("http://www.autoitscript.com/cgi-bin/getfile.pl?autoit3/autoit-v" & $NewFileVersion[0] & "-setup.exe", @DesktopDir & "\autoit-v" & $NewFileVersion[0] & "-setup.exe", 1, 1)
While @InetGetActive
TraySetState(1)
TrayTip("Downloading", "Bytes = " & @InetGetBytesRead, 10, 16)
Sleep(250)
WEnd
$WhatToDoNow = MsgBox(68, "AutoIt Udates", "Updates wurden heruntergeladen!" & @CRLF & "" & @CRLF & "Sollen die Udates jetzt installiert werden?", 20)
Select
Case $WhatToDoNow = 6 ; Ja, Updates installieren
ShellExecuteWait(@DesktopDir & "\autoit-v" & $NewFileVersion[0] & "-setup.exe", "/S") ; Silent Installation
MsgBox(64, "AutoIt Udates", "Updates wurden erfolgreich installiert!")
Case $WhatToDoNow = 7 ; Nein, Updates nicht installieren
Exit
EndSelect
Exit
Case $WhatToDo = 7 ; Nein, Updates nicht herunterladen
Exit
EndSelect
EndIf
Else
Sleep(30000)
EndIf
Sleep(30000)
EndFunc
Gruss
eddy_erpel
Hi,
zu 1 & 2: Meinst Du etwa so????
#include <guiconstants.au3>
#include <array.au3>
#include <GuiList.au3>
$script = "S.T.A.R.T.E.R"
$ini = ($script & "-Settings.ini")
Global $gaDropFiles[1]
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
If FileExists($ini) then
$var = IniReadSection ( $ini, "Run after Start")
For $i = 1 To $var[0][0]
Run(@ComSpec & ' /c "' & $var[$i][1] & '"', "", @SW_HIDE)
Next
Else
;create tool-gui
$guitool = GUICreate("Tool-Settings", 300, 250, -1, -1, -1, $WS_EX_ACCEPTFILES)
WinSetTrans($guitool, "", 240)
$ok3 = GUICtrlCreateButton("&Ok", 20, 220, 70)
$cancel3 = GUICtrlCreateButton("&Cancel", 220, 220, 70)
$toollist = GUICtrlCreateList("", 80, 20, 210, 190)
GUICtrlSetState(-1, $GUI_DROPACCEPTED )
$add = GUICtrlCreateButton("&Add", 10, 20, 60)
GUICtrlSetTip($add, "Here you can browse for a tool (or something else) you want to start")
$remove = GUICtrlCreateButton("&Remove", 10, 50, 60)
GUICtrlSetTip($remove, "Remove the seleted item")
GUISetState(@SW_SHOW, $guitool)
While 1
$msg = GUIGetMsg(1)
Select
case $msg[0] = $gui_event_close; And $msg[1] = $guitool
Exit
Case $msg[0] = $cancel3; And $msg[1] = $guitool
Exit
case $msg[0] = $add; And $msg[1] = $guitool
$file1 = FileOpenDialog("Open File", "", "Alle (*.*)" , 1 + 2)
GUICtrlSetData($toollist, $file1)
case $msg[0] = $remove; And $msg[1] = $guitool
;$remove = GUICtrlRead($toollist)
_GUICtrlListDeleteItem($toollist,_GUICtrlListFindString($toollist,GUICtrlRead($toollist)))
case $msg[0] = $ok3; And $msg[1] = $guitool
$alltext = _GUICtrlListGetAllText($toollist)
For $i = 1 to $alltext[0]
IniWrite(@scriptdir & "\" & $ini, "Run after Start", $i, $alltext[$i])
Next
Exit
Case $msg[0]=$GUI_event_dropped
for $i=_GUICtrlListCount($toollist) To 0 step -1
if _GUICtrlListFindString($toollist,@GUI_DragFile)=-1 Then
_GUICtrlListAddItem($toollist,@GUI_DragFile)
EndIf
Next
EndSelect
WEnd
EndIf
Func _GUICtrlListGetAllText($listbox)
Dim $listinfo, $returntext
$listinfo = _GUICtrlListGetInfo($listbox)
Dim $returntext[$listinfo + 1]
$returntext[0] = $listinfo
If $listinfo = 0 Then
Return $returntext
EndIf
For $i = 0 to ($returntext[0] - 1)
$returntext[$i + 1] = _GUICtrlListGetText($listbox, $i)
Next
Return $returntext
EndFunc
Gruss
eddy_erpel
Hi,
also für die Bildschirmauflösung zu ändern verwende ich dieses Skript:
Zur Desktopfarbe: Ev. anstelle der Desktopfarbe das Desktopbild ändern: "HKCU\Control Panel\Desktop\Wallpaper"
Gruss
eddy_erpel
Hi,
vielen Dank für das Feedback. Ich habe es nochmals etwas genauer angeschaut: Es ist mir aufgefallen, dass er nur Skripte blockiert, in welchen ich Runasset verwendet habe. Da es erst seit gestern der Fall ist, werde ich einmal auf einen neue Signatur warten und hoffe, dass es sich erledigt hat.
MfG
eddy_erpel
Hallo zusammen,
ich habe ein kleineres Problem: Seit einigen Tagen wird z.B. dieses Script von McAffe als "New Malware.j"-Virus erkannt.
dim $logonserver=@LogonServer
RunAsSet("Administrator",@LogonDomain,"password")
RunWait($logonserver & "\NETLOGON\update.cmd")
RunAsSet()
Hat jemand schon ähnliche Erfahrungen gemacht???
Gruss
eddy_erpel
Hi Greenhorn,
die aktuellen Versionen kannst Du in folgender Datei auslesen: AutoIt-Version
Einen Updater wird übrigens schon mitgeliefert: [AutoIt3-InstallDir]\AutoIt3\Extras\AutoUpdateIt
Gruss
eddy_erpel
Hi Holger,
es gibt bereits im Autoit die Funktion "_GetIP()" um die Public Adresse abzufragen.
MfG
eddy_erpel
Hi,
ich kann dabei keinen Fehler finden. Was soll denn genau nicht gehen (Fehlermeldung)?
Mfg
eddy_erpel
Hi Tweaky,
Das Problem ist folgendes:
-Innerhalb einer Funktion definierte Variable ist ausserhalb nicht mehr gültig.
-Eine Variable wird bei einer For-Scheife automatisch immer lokal definiert.
Dabei wird also $i innerhalb der Func neu definiert und ist deshalb danach nicht mehr gültig.
Gruss
eddy_erpel
Hi,
Einige Programme laufen als Dienst. Dann einfach den Dienst beenden und der Spuck ist vorbei. Oder ev. auch den Prozess killen mit "ProcessClose".
Vielleicht funktioniert ja eines von beiden.
Gruss
eddy_erpel
Hi,
Start=>Ausführen=>GPEDIT.MSC=>Computerkonfiguration=>Windows-Einstellungen=>Skripts=>Starten
(Die Gruppenrichtline findet man auch auf dem Domänenkontroller)
Gruss
eddy_erpel
Hi,
mit dem hier funktioniert es.
Gruss
eddy_erpel
Hi,
wer sucht der findet....
Das sollte dir weiterhelfen.
Gruss
eddy_erpel
Hi,
ich nutze die Version 5.33 von Winamp Lite und läuft z.B. so problemlos:
ShellExecute("D:\winamp\winamp.exe", " /PLAY D:\test.mp3", @DesktopDir)
[/autoit]
Warum benutzt du denn nicht die SoundPlay-Funktion von AutoIT? Vielleicht läuft es ja damit.
Gruss
eddy_erpel
Hi,
es gibt auch in AutoIT einen Befehl dafür: "DirRemove"
Gruss
eddy_erpel
Hi,
falls du FTP am laufen hast, kannst du das File einfach per FTPPutFile auf den Server laden.
Gruss
eddy_erpel