Ich weiß eure Verbesserungsvorschläge sowie Tipps sehr zu schätzen und bedanke mich dafür, ich werde versuchen diese Vorschläge im Laufe der nächsten Zeit abzuarbeiten.
Beiträge von munkee
-
-
Naja, man kann es sich so wie ein Foren-Design vorstellen, die kompletten Design-Daten gehören in einen Ordner, wenn man den Ordner löscht, wird wieder das Standard-Design zu sehen sein, wenn man etwas in der .ini ändert, selbst schuld - dann muss man entweder die style.ini/den Ordner löschen oder man setzt das Design bei den Einstellungen zurück.
/e: das Ziel ist es ja, seine eigenen Designs machen zu können.
-
Mach ich sobald das Templatesystem für Themes fertiggestellt habe
Vielen Dank nochmal! :>/edit: Für die, die jetzt schon ein paar Designs machen möchten, hier schonmal die style.ini, sollte sich von selbst erklären.
Spoiler anzeigen
Code
Alles anzeigen[GUI] Height=350 Width=700 BGimage=background.jpg [ListBox] PosX=10 PosY=16 Width=219 Height=318 [NoteBox] PosX=245 PosY=13 Width=368 Height=322 [CloseButton] Height=71 Width=34 PosX=622 PosY=301 [SettingsButton] Height=71 Width=34 PosX=622 PosY=136 [HelpButton] Height=71 Width=34 PosX=622 PosY=178 [EditButton] Height=71 Width=34 PosX=622 PosY=54 [NewButton] Height=71 Width=34 PosX=622 PosY=13 [DelButton] Height=71 Width=34 PosX=622 PosY=95
/e2 Schreibfehler
-
Perfekt!! Wenn du Lust hast kannst du auch mal ein paar Designs basteln, sobald ich das Designsystem und das dazugehörige Template fertig hab
-
HYRULE:
Freut mich dass es dir soweit gefällt, derzeit sieht die GUI so aus:[Blockierte Grafik: http://munksoft.mu.funpic.de/screenupload/g7LIp.png]
Hat sich also schonmal etwas verbessert und es wird sich weiterhin verbessern
Wenn du mir ein Icon machen könntest, wäre es Ideal, das aktuelle habe ich einfach aus iconfinder rausgenommen
-
Achso, verstehe, also so eine Art Widget - Editiere ich gleich mal oben rein! Danke für den Vorschlag
Das mit dem Alarm ist schon eine gute Idee für Notizen, die an einem bestimmten Zeitpunkt gesehen werden sollen, damit man sich daran erinnert, füge ich auch mal oben rein
-
Eventuell könnte man ein Button einfügen der das eine neue Form zeigt (die alte verschwindet
und dann in der neuen kleinen Form alle Notizen drinne sind um sie z.B. aufm 2. Bildschirm (wenn man einen hat) abzulegen.
Uhrzeit und Alarm kann man hinzufügen.Ich verstehe das jetzt nur halb, könntest du mir das bitte nochmal erläutern?
-
Hallo, heute möchte ich euch mein kleines Projekt "mNotice" vorstellen.
Es ist ein simpler Notizenmanager mit (noch) nicht vielen Funktionen außer einer Notiz erstellen sowie löschen Funktion.Ich würde mich sehr freuen wenn ihr mir Tipps geben könnt, was ich Scriptseitig besser machen könnte.
Auch wären Ideen gut, was für Funktionen ich noch einbauen könnte.Ich habe mir für die nächsten Versionen folgende Ziele gesetzt:
- Bearbeiten-Funktionen
- Designs
- Aufzählungspunkte hinzufügen (wie in HTML bspw durch [p] o.Ä.)
- Alarm setzen können
- Widget
- Weiteres folgt, sobald eure Ideen für mich machbar sind
Ich bin noch nicht sehr erfahren in AutoIt, somit entschuldige ich mich für das teilweise schlechte Script, auch weil es ziemlich durcheinander ist.
Screenshot(s):
Spoiler anzeigen
[Blockierte Grafik: http://munksoft.mu.funpic.de/screenupload/MczL5.png]-> GUI der Version 1.0
Download:
munkee.tkQuellcode:
Spoiler anzeigen
[autoit]
[/autoit] [autoit][/autoit] [autoit]
ProgressOn("mNotice", "mNotice wird geladen, bitte warten.")
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Include <GuiButton.au3>
#include <GuiListBox.au3>
#Include <File.au3>$lMsgOld = "Nothing Here"
[/autoit] [autoit][/autoit] [autoit];****************************************************
[/autoit] [autoit][/autoit] [autoit]
; -> GUI: Notiz hinzufügen
;****************************************************
$gui_add = GUICreate("mNotice - Notiz hinzufügen",348,381,-1,-1,-1,-1)
GUICtrlCreateLabel("Beschreibung:",10,65,71,15,-1,-1)
GUICtrlSetBkColor(-1,"-2")
GUICtrlCreateLabel("Titel der Notiz:",10,5,71,15,-1,-1)
GUICtrlSetBkColor(-1,"-2")
$notetitle = GUICtrlCreateInput("",10,20,328,20,-1,512)
$notedesc = GUICtrlCreateEdit("",10,80,326,261,2101316,-1)
$savenote = GUICtrlCreateButton("Speichern",10,350,157,30,-1,-1)
$cancel = GUICtrlCreateButton("Abbruch",184,350,155,30,-1,-1)
;****************************************************;****************************************************
[/autoit] [autoit][/autoit] [autoit]
; -> Haupt-GUI
;****************************************************
$gui_list = GUICreate("Notizen",575,329,-1,-1,$WS_CAPTION,-1)
$close = GUICtrlCreateButton("Schließen",475,290,100,39,-1,-1)
$delbut = GUICtrlCreateButton("Löschen",90,290,90,39,-1,-1)
$newbut = GUICtrlCreateButton("Neu",0,290,90,39,-1,-1)
$list = GUICtrlCreatelist("", 0, 0, 179, 290, 4096, 512)
;****************************************************ProgressSet(5, "Initialisiere Dateisystem...")
[/autoit] [autoit][/autoit] [autoit]If(FileExists("data/notes.idx")) Then
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
$noticelist = FileRead("data/notes.idx")
$fcl = _FileCountLines("data/notes.idx")
Global $note = FileRead("data/" & FileReadLine("data/notes.idx", 1) & ".note")
ProgressSet(10, "Lade Notizen...")
$prg = 10
For $i = 1 To $fcl Step 1
$prg += 1
ProgressSet($prg)
$line = FileReadLine("data/notes.idx", $i)
If(FileExists("data/" & $line & ".note")) Then
_GUICtrlListBox_AddString($list, $line)
Else
FileDelete("data/" & $line & ".note")
EndIf
Next
ProgressSet(100, "Bitte warten...")
Else
ProgressSet(40)
DirCreate("data")
_FileCreate("data/notes.idx")
_FileCreate("data/Willkommen bei mNotice.note")
FileWrite("data/Willkommen bei mNotice.note","Willkommen bei mNotice - Deinem eigenem Notizenmanager!" & @CRLF & "Links kannst du deine Notizen einsehen, ein Klick und die Beschreibung zu der jeweiligen Notiz erscheint auf dieser Seite." & @CRLF & "Unten siehst du Buttons, mit denen du neue Notizen erstellen, bearbeiten und auch löschen kannst." & @CRLF & @CRLF & "Viel Spaß mit mNotice wünscht dir munkee (Entwickler der Software)!")
FileWrite("data/notes.idx","Willkommen bei mNotice")
$note = FileRead("data/Willkommen bei mNotice.note")
$noticelist = FileRead("data/notes.idx")
_GUICtrlListBox_AddString($list, $noticelist)
ProgressSet(100, "Bitte warten...")
EndIfProgressOff()
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
$desc = GUICtrlCreateEdit($note,180,0,394,290,2099200,-1)
GUISetState(@SW_SHOW,$gui_list)While 1
[/autoit] [autoit][/autoit] [autoit]
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
GUISetState(@SW_HIDE,$gui_add)
Case $close
Exit
Case $newbut
GUISetState(@SW_SHOW, $gui_add)
Case $savenote
$nt = GUICtrlRead($notetitle)
FileOpen("data/notes.idx")
FileWrite("data/notes.idx", @CRLF & $nt)
;MsgBox(0, "Title", "NT returned " & $nt)
_GUICtrlListBox_AddString($list, $nt)
FileOpen("data/" & $nt & ".note")
_FileCreate("data/" & $nt & ".note")
$nd = GUICtrlRead($notedesc)
FileWrite("data/" & $nt & ".note",$nd)
GUISetState(@SW_HIDE,$gui_add)
;MsgBox(1, "Notiz hinzugefügt.", "Die Notiz '" & $nt & "' wurde zur Datenbank hinzugefügt.")
TrayTip("Notiz hinzugefügt","Die Notiz '" & $nt & "' wurde zur Datenbank hinzugefügt." & @CRLF & "Zur Speicherung wurde das Programm neugestartet.",10000)
Terminate()
Case $delbut
$yesno = MsgBox(36,"Notiz löschen", "Bist du sicher dass du die markierte Notiz löschen willst?")
If $yesno == 6 Then
$File = FileRead("data/notes.idx")
$Del = GuiCtrlRead($list)
$Save = StringReplace($File, $Del, "")
FileDelete("data/notes.idx")
FileDelete("data/" & $Del & ".note")
_FileCreate("data/notes.idx")
FileWrite("data/notes.idx", $Save)
TrayTip("Notiz hinzugefügt","Die Notiz wurde aus der Datenbank gelöscht." & @CRLF & "Zur Speicherung wurde das Programm neugestartet.",10000)
Terminate()
EndIf
EndSwitch
$lMsg = GuiCtrlRead($list)
If $lMsg <> $lMsgOld Then
$lMsgOld = $lMsg
;MsgBox(0, "Debug", $lMsg)
$text = FileRead("data/" & $lMsg & ".note")
GuiCtrlDelete($desc)
$desc = GUICtrlCreateEdit("",180,0,394,290,2099200,-1)
GuiCtrlSetData($desc, $text, "Fehler: Notiz wurde nicht in der Datenbank gefunden.")
EndIf
WEndFunc Terminate()
[/autoit]
if @Compiled then
Run('"' & @AutoItExe & '"')
Else
Run('"' & @AutoItExe & '" "' & @ScriptFullPath & '"')
EndIf
Exit
EndFuncWie gesagt würde ich mich sehr über Feedback freuen!
Edit-Log
Spoiler anzeigen
15. Juni '13 - 15:57: 2 Sachen zur "Todo" hinzugefügt. -
Oh, tut mir Leid, total vergessen.
mInfo.au3
[autoit]
[/autoit] [autoit][/autoit] [autoit]
#include <Functions.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <GuiButton.au3>$iState = _GetNetConnection()
[/autoit] [autoit][/autoit] [autoit]
$iOldState = $iState$cState = _Battery_IsCharging()
[/autoit] [autoit][/autoit] [autoit]
$cOldState = $cState
Switch $cState
Case True
$cStateText = "Lädt"
Case False
$cStateText = "Entlädt"
EndSwitch$Charge = _Battery_GetCharge()
[/autoit] [autoit][/autoit] [autoit]
$OldCharge = _Battery_GetCharge()$Voltage = _Battery_GetVoltage()
[/autoit] [autoit][/autoit] [autoit]
$OldVoltage = $Voltage$CPU = GetCPUUsage()
[/autoit] [autoit][/autoit] [autoit]
$OldCPU = $CPU$gui = GUICreate("mInfo", 161, 133, -1, -1, -1, -1)
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
If ($iState == True) Then
$NetLabel = GUICtrlCreateLabel("Verbunden", 50, 110, 81, 15, -1, -1)
GUICtrlSetColor($NetLabel, "0x00FF00")
Else
$NetLabel = GUICtrlCreateLabel("Nicht Verbunden", 50, 110, 81, 15, -1, -1)
GUICtrlSetColor($NetLabel, "0xFF0000")
EndIf
GUICtrlCreateLabel("Internet:", 10, 110, 41, 15, -1, -1)
GUICtrlCreateLabel("Akkuladung: ", 10, 10, 83, 15, -1, -1)
$cStateLabel = GUICtrlCreateLabel("Akkustatus: " & $cStateText, 10, 30, 91, 15, -1, -1)
$ChargeLabel = GUICtrlCreateLabel(_Battery_GetCharge() & "%", 73, 10, 83, 15, -1, -1)
$VoltageLabel = GUICtrlCreateLabel("Spannung: " & _Battery_GetVoltage() & "V", 10, 50, 98, 15, -1, -1)
$CPULabel = GUICtrlCreateLabel("CPU: " & GetCPUUsage() & "%", 10, 80, 100, 15, -1, -1)
GUISetState(@SW_SHOW, $gui)While 1
[/autoit] [autoit][/autoit] [autoit]
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch$CPU = GetCPUUsage()
[/autoit] [autoit][/autoit] [autoit]
If $CPU <> $OldCPU Then
$OldCPU = $CPU
GUICtrlSetData($CPULabel, "CPU: " & $CPU & "%")
EndIf$Voltage = _Battery_GetVoltage()
[/autoit] [autoit][/autoit] [autoit]
If $Voltage <> $OldVoltage Then
$OldVoltage = $Voltage
GUICtrlSetData($VoltageLabel, "Spannung: " & $Voltage & "V")
EndIf$Charge = _Battery_GetCharge()
[/autoit] [autoit][/autoit] [autoit]
If $Charge <> $OldCharge Then
$OldCharge = $Charge
GUICtrlSetData($ChargeLabel, $Charge & "%")
EndIf$cState = _Battery_IsCharging()
[/autoit] [autoit][/autoit] [autoit]
If $cState <> $cOldState Then
$cOldState = $cState
If (_Battery_IsCharging() == True) Then
GUICtrlSetData($cStateLabel, "Akkustatus: Lädt")
Else
GUICtrlSetData($cStateLabel, "Akkustatus: Entlädt")
EndIf
EndIf$iState = _GetNetConnection()
[/autoit]
If $iState <> $iOldState Then
$iOldState = $iState
If ($iState == True) Then
GUICtrlSetData($NetLabel, "Verbunden")
GUICtrlSetColor($NetLabel, 0x00FF00)
Else
GUICtrlSetData($NetLabel, "Nicht Verbunden")
GUICtrlSetColor($NetLabel, 0xFF0000)
EndIf
EndIf
WEndFunctions.au3
[autoit]
[/autoit] [autoit][/autoit] [autoit]
Func _GetNetConnection()
Local $aReturn = DllCall('connect.dll', 'long', 'IsInternetConnected')
If @error Then
Return SetError(1, 0, False)
EndIf
Return $aReturn[0] = 0
EndFunc ;==>_GetNetConnectionFunc _Battery_StartUp()
[/autoit] [autoit][/autoit] [autoit]
Local $o_WMIService = ObjGet("winmgmts:\\localhost\root\CIMV2")
Return $o_WMIService.ExecQuery("SELECT * FROM Win32_Battery", "WQL", 48)
EndFunc ;==>_Battery_StartUpFunc _Battery_IsCharging()
[/autoit] [autoit][/autoit] [autoit]
Local $o_item, $_state = Default, $o_object = _Battery_StartUp()
If IsObj($o_object) Then
For $o_item In $o_object
$_state = $o_item.BatteryStatus
Next
If $_state < 0 Or $_state > 7 Then
Return SetError(-2)
Else
If $_state = 2 Then
Return True
Else
Return False
EndIf
EndIf
Else
Return SetError(-1)
EndIf
EndFunc ;==>_Battery_IsChargingFunc _Battery_GetCharge()
[/autoit] [autoit][/autoit] [autoit]
Local $o_item, $o_object = _Battery_StartUp()
If IsObj($o_object) Then
For $o_item In $o_object
Return $o_item.EstimatedChargeRemaining
Next
Else
Return SetError(-1)
EndIf
EndFunc ;==>_Battery_GetChargeFunc _Battery_GetVoltage()
[/autoit] [autoit][/autoit] [autoit]
Local $o_item, $o_object = _Battery_StartUp()
If IsObj($o_object) Then
For $o_item In $o_object
Return ($o_item.DesignVoltage / 1000)
Next
Else
Return SetError(-1)
EndIf
EndFunc ;==>_Battery_GetVoltageFunc GetCPUUsage()
[/autoit] [autoit][/autoit] [autoit]
Local $wbemFlags = 0x10 + 0x20Local $objWMIService = ObjGet("winmgmts:\\" & @ComputerName & "\root\CIMV2")
[/autoit] [autoit][/autoit] [autoit]
Local $colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_Processor", "WQL", $wbemFlags)Local $c = 0
[/autoit] [autoit][/autoit] [autoit]
Local $sMsg = ""For $objItem In $colItems
[/autoit] [autoit][/autoit] [autoit]
$sMsg &= "cpu%" & $objItem.LoadPercentage
Next$CpuAuslastung = StringSplit($sMsg, "cpu%", 1)
[/autoit] [autoit][/autoit] [autoit]For $n = "0" To $CpuAuslastung[0]
[/autoit] [autoit][/autoit] [autoit]
$c += $CpuAuslastung[$n]
NextReturn (Round($c / $CpuAuslastung[0], 0))
[/autoit]
EndFunc ;==>GetCPUUsageEdit Oscar: Bitte füge die Scripte zukünftig direkt hier in den Beitrag ein (habe das jetzt mal für Dich erledigt). Pastebin und co. sind eher als Hilfsmittel für die Shoutbox gedacht.
-
Hallo Community,
ich möchte euch hiermit meinen ersten Release vorstellen: mInfo
Es ist ein kleines (ganz kleines) Tool, welches mithilfe von UDF's geschrieben wurde, dieses Zeigt ein paar Daten des Computers an.
Ich release das Programm, um für zuküftiges zu üben und gewissen Problemen o.Ä. schon im vorraus aus dem Weg zu gehen.
Hier ein Screenshot des kleinen Tools:
[Blockierte Grafik: http://munksoft.mu.funpic.de/Projects/mInfo/mInfo-Screen.PNG]
Es ist in der Version 1.0, da ich in Zukunft plane das kleine Programm weiterhin weiterzuentwickeln, um dazu zu lernen.
Ich hoffe euch gefällt das kleine Programm schonmal, über konstruktive Kritik, Vorschläge etc. freue ich mich!
Download
Weitere Informationen sowie Updates gibt es auf meiner Seite munkee.tk -
Ich grab das Thema mal aus.
[autoit]
Ich habe nun folgenden Code:
[/autoit][autoit][/autoit][autoit]
$dll = DllOpen("API.dll")
If @error Then
MsgBox(48, "API - Fehler", "Die API.dll konnte nicht gefunden werden." & @CRLF & "Der Keybinder wird nun beendet. - Error = " & @error)
Exit
EndIf$hModule = DllCall($dll, "UINT", "LoadLibrary", "str", "API.dll")
[/autoit][autoit][/autoit][autoit]
;DllCall(If($hModule == -1 Or $hModule == 0) Then
[/autoit]
MsgBox(48, "API - Fehler", "Die API.dll konnte nicht gefunden werden." & @CRLF & "Der Keybinder wird nun beendet. - hModule = " & $hModule)
Exit
EndIfDiese sieht in AHK so aus:
CodehModule := DllCall("LoadLibrary", Str, A_ScriptDir . "\API.dll") if(hModule == -1 || hModule == 0) { MsgBox, 48, API - Fehler, Die API.dll konnte nicht gefunden werden.`nDer Keybinder wird nun beendet. ExitApp }
Folgendes Problem:
$hModule returnt 0, was heißt, dass die API.dll nicht in dem Verzeichnis ist, allerdings ist sie in dem Verzeichnis, was auch durch das @error beim DllOpen bestätigt wird (@error = 0), was habe ich hierbei Falsch gemacht? Laut dem Entwickler der API returnt LoadLibrary UINT./e: Die Variante mit cdecl habe ich ebenfalls schon versucht, allerdings ohne Erfolg.
-
huh? wie meinen?
-
Habe immernoch keine Lösung, was ist mit dir, funkey: - du hattest doch einen Fehler entdeckt?
-
Naja ich würde mal vermuten es liegt an deinem Datentyp von $color. Ich arbeite zwar normal nicht mit dlls, aber du verwendest in deiner Funktion die den dllcall macht "int" als Datentyp, übergibst aber für $color einen hex-wert.
Und wenn es daran liegen würde, würde die Funktion erst garnicht ausgeführt werden, bei mir wird sie ein mal ausgeführt und direkt beendet.
-
100% legal, funktionen wie Geld geben etc. gibt es nicht, somit auch keine Hack-/Cheatware.
Willst du mir sagen wo der Fehler liegt?
-
Die DLL ist eine API für einen externen GTA San Andreas Multiplayer Clienten, durch die API ist es möglich Keybinder sowie Overlays zu erstellen, die schneller und sicherer funktionieren, mehr dazu findet man hier: Samp-Api Wiki
Eine GUI ist noch nicht drin, deshalb hat man noch keine Möglichkeit das Programm zu beenden, wird aber eingefügt sobald die Funktion überhaupt funktioniert.
Das DllClose habe ich eben aus Testgründen weg gemacht, habe es allerdings beim einfügen ins Forum vergessen wieder rein zu schreiben.
Hoffe das hilft weiter.
Mit freundlichen Grüßen
munkee -
Ich habe folgenden Code:
[autoit]#AutoIt3Wrapper_usex64=n
[/autoit][autoit][/autoit][autoit]
$dll = DllOpen(@ScriptDir & "\API.dll")
HotKeySet("{F3}","ACM")
Func AddChatMessage($Color, $Text)
$ret = DllCall($dll, "int", "API_AddChatMessage", "int", $Color, "str", $Text)
Return $ret[0]
EndFuncFunc IsChatOpen()
[/autoit][autoit][/autoit][autoit]
$ret = DllCall($dll,"int","API_IsChatOpen")
Return $ret[0]
EndFuncWhile True
[/autoit][autoit][/autoit][autoit]
Sleep(100)
WEndFunc ACM()
[/autoit]
AddChatMessage(0xFFFFFF,"AddChatMessage-Test - @error returned: " & @error)
EndFuncFunktioniert ja alles, nur, wenn ich nun F3 drücke, wird die Funktion 1 mal ausgeführt und das (AutoIt-)Programm schließt sich, mit folgenden Daten in der Konsole:
CodeStarte Datei Griffins_GRP_Keybinder.au3... Griffins_GRP_Keybinder.au3 -> Exit Code: -1073741819 (Laufzeit: 5.95 sec)
Bei @error wird auch nur 0 zurückgegeben, nur der Exit Code ist komisch, kann mir hierbei jemand evtl. helfen?
Danke im Vorraus!Mit freundlichen Grüßen
munkee -
Kein Problem, konntest du ja nicht wissen, 0.8.2 gibts nur im Forum
-
Ja ist es, und soeben habe ich erfahren dass es ein Trashrelease ist, die API funktioniert nicht auf jedem Rechner, somit wäre das Problem gelöst (Ist ja auch komisch, immerhin ging die Version davor noch perfekt), somit wäre es geklärt, ich bedanke mich bei allen die sich die Mühe gemacht haben, ihr seid Super!
-
Windows 7 x64, hab das mal ausprobiert, allerdings wird die DLL bei mir trotzdem nicht geöffnet wenn ich die normalen Funktionen.
Auch beim Debugging wird mir angezeigt:
@@ Debug(5) : $dll = -1 (DllOpen...)bzw ganzer code:
@@ Debug(5) : $dll = -1
>Error code: 0
@@ Debug(8) : $ret = 0
>Error code: 1
@@ Debug(11) : $ret = 0
>Error code: 1---
Irgendwie funktioniert es nur bei mir nicht...