Beiträge von Schrubber
-
-
Hey Ihr,
Ich hab mal ein Push2Talk für Skype gebastelt. Dabei hab ich die Scriptpassagen von einem anderen Thread genommen, dazu eine GUI gepackt.
Nur 1 kleines Problem:
AutoIt Script
[autoit]
[/autoit] [autoit][/autoit] [autoit]
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <Misc.au3>
#Region ### START Koda GUI section ### Form=
$Form1_1 = GUICreate("Skype Push2Talk", 242, 236, 192, 124)
$bgpic = GuiCtrlCreatePic (@SCRIPTDIR & "\skype-logo.jpg",-20,-10,262,250)
$pic = GUICtrlSetState(-1,$GUI_DISABLE)
$headline = GUICtrlCreateLabel("Skype Push2Talk", 8, 8, 204, 33)
GUICtrlSetFont(-1, 15, 800, 0, "Nightclub BTN")
GUICtrlSetColor(-1, 0xFFFFFF)
GUICtrlSetBkColor(-1, 0x000000)
$copyright = GUICtrlCreateLabel("by Schrubber", 136, 40, 100, 21)
GUICtrlSetFont(-1, 8, 800, 0, "Nightclub BTN")
GUICtrlSetColor(-1, 0xFF0000)
GUICtrlSetBkColor(-1, 0x000000)
$status_lable = GUICtrlCreateLabel("Status", 8, 168, 50, 21)
GUICtrlSetFont(-1, 8, 800, 0, "Nightclub BTN")
GUICtrlSetColor(-1, 0xFFFFFF)
GUICtrlSetBkColor(-1, 0x000000)
$status = GUICtrlCreateLabel("inactive", 64, 168, 56, 21)
GUICtrlSetFont(-1, 8, 800, 0, "Nightclub BTN")
GUICtrlSetColor(-1, 0xFF0000)
GUICtrlSetBkColor(-1, 0x000000)
$b_activate = GUICtrlCreateButton("Activate", 8, 192, 65, 33, $WS_GROUP)
GUICtrlSetFont(-1, 8, 800, 0, "Nightclub BTN")
GUICtrlSetColor(-1, 0xFF0000)
GUICtrlSetBkColor(-1, 0xC0C0C0)
$b_deactivate = GUICtrlCreateButton("Deactivate", 80, 192, 81, 33, $WS_GROUP)
GUICtrlSetFont(-1, 8, 800, 0, "Nightclub BTN")
GUICtrlSetColor(-1, 0xFF0000)
GUICtrlSetBkColor(-1, 0xC0C0C0)
$b_quit = GUICtrlCreateButton("Exit", 168, 192, 65, 33, $WS_GROUP)
GUICtrlSetFont(-1, 8, 800, 0, "Nightclub BTN")
GUICtrlSetColor(-1, 0xFF0000)
GUICtrlSetBkColor(-1, 0xC0C0C0)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###$oSkype = ""
[/autoit] [autoit][/autoit] [autoit]
$key = ""
$sAttach = "No"While 1
[/autoit] [autoit][/autoit] [autoit]
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
$oSkype.Mute = "False"
ExitCase $b_quit
[/autoit] [autoit][/autoit] [autoit]
$oSkype.Mute = "False"
ExitCase $b_activate
[/autoit] [autoit][/autoit] [autoit]
if(ProcessExists("Skype.exe")) then
$key = IniRead("key.ini", "keyconfig", "key", "")
if($key = "") Then
MSGBOX(0, "Error", "No Key is declared. Please edit your key.ini!")
Else
$oSkype = ObjCreate("Skype4COM.Skype")
$oSkype.Attach()
$sAttach = $oSkype.AttachmentStatus
EndIf
Else
MSGBOX(0, "Error", "Skype is not running!")
EndIfCase $b_deactivate
[/autoit] [autoit][/autoit] [autoit]
GUICtrlSetData($status, "inactive")
GUICtrlSetColor($status, 0xFF0000)
$oSkype.Mute = "False"
$sAttach = "Deactivated"
EndSwitch
_push2talk()
WEndFunc _push2talk()
[/autoit] [autoit][/autoit] [autoit]
If(ProcessExists("Skype.exe")) Then
If $sAttach = "Success" Or $sAttach = "Erfolg" Then
$oSkype.Mute = "True"
GUICtrlSetData($status, "active")
GUICtrlSetColor($status, 0x00FF00)If _IsPressed($key) Then
[/autoit] [autoit][/autoit] [autoit]
$oSkype.Mute = "False"
While _IsPressed($key)
sleep(64)
WEnd
$oSkype.Mute = "True"
Else
Sleep(100)
EndIf
Else
Sleep(100)
EndIf
Else
Sleep(100)
EndIfEndFunc
[/autoit]key.ini
[keyconfig]
key=20Wenn ich das starte, sagt er mir beim schließen wieder, dass $oSkype kein Object sei.
Wie behebe ich dies? Das Programm funzt, wenn ich es mit activate usw. benutze, jedoch nicht, wenn ichs nur schließe.Will ja keinen Error kriegen
Danke im vorraus,
Schrubber -
Hallo Ihr,
Ich habe mir von Oscar dieses Chatbox für 2User Chat (an einem Computer) geschnappt und bin nun testweise dran, dies als einen IM zu basteln, welcher über FTP die Daten schreibt und ließt.
Hier der bisherige Code:Spoiler anzeigen
[autoit]#include <EditConstants.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <WindowsConstants.au3>
#include <GUIConstantsEx.au3>
#include <Date.au3>
#include <Chatbox.au3>
#include <Array.au3>
#include <FTPex.au3>$hGui = GUICreate('Chatbox Beispiel', 600, 600, -1, -1, BitOR($GUI_SS_DEFAULT_GUI, $WS_SIZEBOX))
[/autoit] [autoit][/autoit] [autoit]
$hChat = _Chatbox_Create($hGui, 10, 10, 580, 420, 0xffffaa, @ScriptDir & '\Chatlog.txt')
GUICtrlSetFont(-1, 12)
$menu1 = GUICtrlCreateMenu("Datei")
$menu11 = GUICtrlCreateMenuitem("Connect to Chat", $menu1)
$menu12= GUICtrlCreateMenuitem("Create new Protokoll", $menu1)
$menu13 = GUICtrlCreateMenuitem("Exit", $menu1)
$hSmiley1 = GUICtrlCreateButton('Smiley auswählen', 70, 480, 100, 18)
$hUser1 = GUICtrlCreateInput('', 10, 500, 540, 20)
$hEnter1 = GUICtrlCreateButton('send', 550, 500, 40, 20)
GUISetState()
_Chatbox_SetData($hChat, 'Bitte haltet euch an die Regeln!', 0x000000, 5)
GUICtrlSetState($hUser1, $GUI_FOCUS)
GUICtrlSetState($hEnter1, $GUI_DEFBUTTON)$username = ""
[/autoit] [autoit][/autoit] [autoit]
$connection = 0
$remotefile = ""
$protokollhtml = ""While True
[/autoit] [autoit][/autoit] [autoit]$text = '[' & _Now() & '] '&$username&': ' & GUICtrlRead($hUser1)
[/autoit] [autoit][/autoit] [autoit]Switch GUIGetMsg()
[/autoit] [autoit][/autoit] [autoit]
Case $GUI_EVENT_CLOSE
Exit
Case $hSmiley1
_Chatbox_SmileyToText($hUser1, '', -1, -1, $hGui)
GUICtrlSetState($hUser1, $GUI_FOCUS)
GUICtrlSetState($hEnter1, $GUI_DEFBUTTON)Case $menu11
[/autoit] [autoit][/autoit] [autoit]
$username = InputBox("Username", "Dein Username?")
$chatprotokoll = InputBox("Protokoll", "Bitte wählen sie das bestehende Chat-Protokoll aus, mit dem sie verbunden werden wollen.")
$open = _FTP_Open("Chat-Protokollverbindung")
$connection = _FTP_Connect($open,"server","accountname","passwort", 1)
if($connection = 0) Then
MSGBOX(0, "Fehler", "Es konnte keine Verbindung hergestellt werden. Bitte versuchen sie es später erneut.")
EndIfCase $hEnter1
[/autoit] [autoit][/autoit] [autoit]
if($connection = 0) Then
MSGBOX(0, "Fehler beim Verbinden", "Es trat ein Fehler beim Verbinden auf. Bitte versuchen sie es später erneut!")
elseif($username = "") Then
MSGBOX(0, "Fehler beim Login", "Dein Username ist ungültig.")
elseif(GUICTRLRead($hUser1) = "") Then
MSGBOX(0, "Fehler beim Versenden", "Du kannst keine leeren Zeilen versenden.")
else
$protokollhtml = @SCRIPTDIR&"\"&$chatprotokoll&".html"
$remotefile = $chatprotokoll&".html"
$remotefile = "/Chatlogs/"&$chatprotokoll&".html"
_Chatbox_SetData($hChat,$text, 0xff0000, 2)
$array = _Chatbox_ReadHTML($hChat)
FileWriteLine($protokollhtml, $array)
_FTP_FilePut($connection, $protokollhtml, $remotefile)
FileDelete($protokollhtml)
GUICtrlSetData($hUser1, '')
GUICtrlSetState($hUser1, $GUI_FOCUS)
GUICtrlSetState($hEnter1, $GUI_DEFBUTTON)
EndifCase $menu12
[/autoit] [autoit][/autoit] [autoit]
MSGBOX(0, "Error", "Dieses Feature ist noch nicht verfügbar.")
Case $menu13
_FTP_Close($connection)
Exit
EndSwitch$start = TimerInit()
[/autoit] [autoit][/autoit] [autoit]if($start > 500) then
[/autoit] [autoit][/autoit] [autoit]
if(FileGetSize($protokollhtml) = _FTP_FileGetSize($connection, $remotefile)) Then
Else
_FTP_FileGet($connection, $remotefile, $protokollhtml)
$array2 = FileRead($protokollhtml)
;MSGBOX(0, "", $array2)
$hChat = _IECREATEEmbedded()
_IEBodyReadHTML($protokollhtml)
;~ _Chatbox_SetData($hChat,$array2)
$start = TimerInit()
Endif
EndIfWEnd
[/autoit]Nun klappt die Übertragung an den Server und das runterladen der Datei. (Auch nur dann, wenn Veränderungen gemacht wurden) Nun möcht ich aber, falls der Kollege was geschrieben hat, dass er mir des aktuelle Chatfenster komplett löscht und den neuen Text aus der HTML Datei einließt.
So sieht eine Beispielsweise angelegte HTML Site im KOMPLETTEN Quelltext aus:
Code<P><FONT color=#000000 size=5><B><U>Bitte haltet euch an die Regeln!</U></B></FONT></P> <P><FONT color=#ff0000 size=2><B>[24.05.2010 22:12:04] Schrubber:</B> Hallo :)</FONT></P>
Leider funktioniert das nicht ganz. Er wirft mich mit einem Error rauß, wenn er die Datei lesen will.
Meine Frage: Wie kann ich dem _IE Embedded den Quelltext so übergeben, dass er mir angezeigt wird (wie vorher) UND dass meine Nachricht ebenfalls druntersteht, falls ich schreibe.Denke, dies muss iwie mit der Include gemacht werden von Chatbox.
Link zu der IncludeIch danke im vorraus, wenn mir jemand helfen kann
Schrubber
-
Funktioniert
Vielen Dank
Schrubber -
Nabend,
Ich sitz momentan an einem kleinen Programm. Sinn ist eig egal
[autoit]$protokollhtml = @SCRIPTDIR&"\"&$protokoll&".html"
[/autoit]
$remotefile = "\Chatlogs\"&$protokoll&".html"
FileDelete($protokollhtml)
FileWriteLine($protokollhtml, $array)
_FTP_FilePut($connection, $protokollhtml, $remotefile)Verbinden mit dem Server tu ich richtig, die Quelldatei liegt im $protokollhtml drin (wird vorher mit der Variable auch erstellt). $remotfile ist eig auf dem FTP Server der Ordner Chatlogs, wo die Datei reinsoll.
Aber es funzt net. Die Datei wird einfach nicht erstelltHilfe plz
Schrubber
-
Dann müsste ich aber ein Sleep von 200 einbauen, aweil mir sonst die CPU hochzieht. Und dann isses wieder zu kurz, weil Shutdown dann schließt
Aber im Hintergrund 1nen Texteditor öffnen mit einem Text is ne gute Idee.
Und dann abfangen, ob ein Speicherversuch (durchs schließen) vorliegt, ggf. also dann shutdown -a?
-
Hay,
Ich hab mal ne Frage. Und zwar gibt es ja viele Scherzbolde, die einen mit shutdown usw. ärgern wollen. Nun meine Frage:
Ist es möglich, mit Autoit einen solchen shutdown-Befehl abzufangen oder ggf. direkt nach dem eintreffen zu neutralisieren?
Danke
Schrubber -
Weiß keiner? Schade.
Aber seh ich ein, eindeutig zuwenig Text, um es daran zu erkennen
-
Hey Ihr
Da es bisher immer so gut geklappt hat mit den Liedern, würd ich euch gerne um ein weiteres Lied fragen. Suche den Namen bei Google, aber da dort nicht viel Text ist, ist es nahezu unmöglich, diesen Song der verwendeten Lyrics nach zu bestimmen.
Danke im vorraus,
Schrubber -
Download funktioniert nichtmehr.
Er findet die Lieder nicht. -
Ok, werde das mal umstellen
Erstmal wieder 30 Mins warten, bis der Pc hochfährt ;/ Der kackt immer erst 100x ab, bevor ers dann doch schafft ey
Edit 1:
Ok. Nun hab ichs eingestellt, neugestartet und nun läuft er einwandfrei hoch.
Iwie musste er erst warm werden (omg? Ein 1 und 0, mechanisches System muss warm werden?Edit 2:
Ok. Kommt kein Bluescreen, also gibts auch keinenEdit 3:
Neues Netzteil eingebaut, läuft nun 1A Danke -
Wenns der Festplattencontroller ist, warum läuft er dann ab undzu stabil und schmiert noch vor dem HardwareCheck ab?
-
Hallo ihr,
Bitte nicht wundern, dass hier einige Schreibfehler gewinnen sind. Ich schreibe diesen Text mit der Sprachsteuerung.
Und zwar habe ich seit neuestem ein Problem mit meinem neuen Computer.Ich habe ihn saubergemacht und wenn ich ihn starten möchte stürzte jedes Mal ab. Malek der überhaupt nicht, ab und zu mal wieder sogar bis ins Betriebssystemen. Ich weiß nicht, wo der Fehler liegt. Ich kriege keinen blauen Bildschirmen (in englisch, er versteht es sonst nichts.)
Ich habe bereits die Festplatte ausgetauscht, auch den Arbeitsspeicher. Die Strafe Karte funktioniert. Ich weiß nicht woran es liegt. Im Protokollansicht steht auch kein Fehler drin. Momentan funktioniert der inklusive dem Betriebssystem und Wolff stabil. Das ist auch der Grund, weshalb ich mit der Sprachsteuerung sprechen muss. Die Tastatur ist nämlich an den Computer angeschlossen.
Weiß vielleicht jemand von euch Rat, wo das Problem liegen könnte. Ich weiß gerade nicht mehr weiter. Vor allem, daher gerade stabil läuft, halte ich ein Harte Ware Defekt (englisch) für ausgeschlossen.
Ich danke euch im voraus,Schrubber
-
Avira AntiVirus:
Reagiert selbst auf Fakeviren nicht (Testviren), schlägt, wenn schon, dann einen Fehlalarm und lässt nur 2% löschen. Updates bringen nicht wirklich was, Scan dauert elendig lange und austricksbar ist es zu sehr.Avast / AVG:
Springt auf Fakeviren ebenfalls nicht an, hat zwar schnellere Suchgeschwindigkeit, aber eine lausige Richtig/Falsch Quote. Löscht Dateien sogar im Hintergrund und knallt im ungünstigsten Fall sogar das System.
Lässt sich nicht ausschalten (vll Download, der anschlägt (Fehlanschlag) und wenn dann docgh per Taskmanager geschlossen, öffnet sich das Tool wieder durch eines der Hilfsprozesse.GData:
Integrierte Firewall, Internet Security und alles. Scannt alle Downloads vorm laden, alle Internetseiten und Dateien. Fast keine Fehlanschläge, leichte Handhabung. Lässt sich ebenfalls leicht ausstellen. Sehr einfach zu konfigurieren und eine Geschwindigkeit, von der die anderen AV-Tools nur träumen. -
AVG: Nein
Avira Antivirus: NeinIch hab GData drauf, sehr zufrieden.
-
Shit... stimmt. Wie gut, dass es hier immer jemanden gibt, ders besser weiß
Vielen Dank, meine Hausaufgaben sind gesichert
-
Hausaufgabe als Autoit-Script zur Berechnung - Was ist falsch?
Hallo Ihr,
Ich hab heute eine Hausaufgabe für unser Fach "Physik" aufbekommen, wo wir einen Gesamtwiderstand einer Leitung berechnen sollen, wo ein Stahlkern und außen rum halt ein Alumantel ist. Hab das versucht, in ein Programm zu packen. Ich weiß, dass die letztliche Lösung 1,43Ohm sein muss. Aber ich komme da einfahc nicht drauf. Kann mir vll jemand helfen?Mein Script:
[autoit];Formel: Widerstand = spezifischer Leiterwiderstand * (Länge in meter/Querschnitt in mm²)
[/autoit][autoit][/autoit][autoit]
;Leiterwiderstand Aluminium: 0.028 Ohm mm²/m
;Leiterwiderstand Stahl: 0.13 Ohm mm2/m
;Leiterlänge: 21km -> 21.000m
;Radius Stahlleitung: 0.4cm
;Radius Aluleitung: 1.2cm
;Stahlleitung ist in Aluleitung als sog. Seele enthalten.$pi = 3.1415926535897
[/autoit][autoit][/autoit][autoit]
$laenge = 21000;21km in m
$querschnittstahl = ((0.4*0.4)*$pi)/100
$volumenstahl = $querschnittstahl * $laenge
$querschnittalu = ((1.2*1.2)*$pi)-((0.4*0.4)*$pi)
$widerstandstahl = 0.13*($laenge/$querschnittstahl)
$widerstandalu = 0.028*($laenge/$querschnittalu)
$gesamtwiderstand = $widerstandalu + $widerstandstahlMSGBOX(1, "", "Querschnitt Stahl: " & $querschnittstahl)
[/autoit]
MSGBOX(1, "", "Querschnitt Aluminium: " & $querschnittalu)
MSGBOX(1, "", "Widerstand Stahl: " & $widerstandstahl)
MSGBOX(1, "", "Widerstand Aluminium: " & $widerstandalu)
MSGBOX(1, "", "Gesamtwiderstand: " & $gesamtwiderstand)Schrubber
-
[autoit]
if(_ispressed(01)) then
[/autoit]
MouseClick("right")
EndIf -
So:
[autoit]
[/autoit]
$iZufall = Random(1, 10)
While 1
sleep($iZufall)
$iZufall = Random(1, 10)
WEndDamit machst du aber eine Zufallszahl zwischen 1 und 10, die dann als Zeit genommen word. Aber da du anscheinend das in Sekunden brauchst, mach:
[autoit]sleep($iZufall*1000)
[/autoit] -
Hallo.
Wie sende ich Tasten an eine Java-Anwendung?
Also hab geschafft, dort in ein Editfeld einen Text einzufügen, jedoch klappt es nicht per ControlSend, ein {ENTER} zu simulieren.Handle stimmt alles, Text mit ControlSetText funktioniert, nur die Enter nicht
Danke,
Schrubber