Jump to content

Sky Slate Blueberry Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate
Photo

AHK Code Optimieren , WinCE


  • Please log in to reply
55 replies to this topic
lasso
  • Members
  • 111 posts
  • Last active: May 19 2013 04:19 PM
  • Joined: 02 Nov 2012

stimmt das ist  ein parserbug im interpreter der erste stringtocken wird nicht mit dem zweiten verkettet

aber so is es ok

  Gui, Show, x0 y0 w478 h247, % (Seite_aktuell == 2) 
  ? "Horizonttauscher V.3 Seite 2" 
  : "Horizonttauscher V.3 Seite 1"


Manni 123
  • Members
  • 84 posts
  • Last active: Jan 10 2016 12:56 AM
  • Joined: 02 Dec 2012

Danke lasso

 

100% grin.png

 

Gruß Manni



Manni 123
  • Members
  • 84 posts
  • Last active: Jan 10 2016 12:56 AM
  • Joined: 02 Dec 2012

Hi lasso

 

Stand  noch eine Anzeige immer auf Tag , habe ich durch deine Vorlagen selbst lösen können , wahrscheinlich nicht so elegant wie Du aber es funktioniert .

 

 

 

 if(A_ThisLabel == "klick_tag")
    msgbox, 262145 , , Horizont Tag %imgIndex% installieren ?
    Else
    msgbox, 262145 , , Horizont Nacht %imgIndex% installieren ?

 

 

 

Habe schon viel gelernt durch euch .

 

Gruß Manni



Manni 123
  • Members
  • 84 posts
  • Last active: Jan 10 2016 12:56 AM
  • Joined: 02 Dec 2012

Gin noch einfacher  .

 

 

 

klick_tag:
klick_nacht:
  if(RegExMatch(A_GuiControl,"(\d*)$", out)){ ;// Control Nummer (index) aus A_GuiControl extrahieren
    imgIndex := out1 + ((Seite_aktuell-1) * 20) ; und in imgIndex schreiben
    if(Seite_aktuell == 2){
      imgIndex -=20
    }
    if(A_ThisLabel == "klick_tag"){
      msgbox, 262145 , , Horizont Tag %imgIndex% installieren ?
    IfMsgBox Cancel
      Return
      FileCopy, %sourcefolder%%imgIndex%_*.png, %savefolder%horizon_3d_day.png   , 1
    }else{
      msgbox, 262145 , , Horizont Nacht %imgIndex% installieren ?
    IfMsgBox Cancel
      Return
      FileCopy, %sourcefolder%%imgIndex%_*.png, %savefolder%horizon_3d_night.png , 1
    }
  }
Return

 

 

Gruß Manni



Manni 123
  • Members
  • 84 posts
  • Last active: Jan 10 2016 12:56 AM
  • Joined: 02 Dec 2012

Wenn es nicht zu unverschämt ist , könnt ihr hier in Opti-Speicher auch bitte mal nach schauen ob da auch noch was geht zu Optimieren .

 

Das was ich von euch weis habe ich schon gemacht , glaube ich .

 

 

 

 

 

Spoiler

 

 

Gruß Manni



nnnik
  • Members
  • 1625 posts
  • Last active: Jan 24 2019 02:19 PM
  • Joined: 28 Jul 2012

Du verschwendest quasi ständig Platz.
Anstatt Var=off oderm Var=on einfach Var auf 1 setzten (1) oder Var (0) garnicht erst setzten.
Z.B. if var `n Code... `n Else`n Code...
oder
if (erste||neu)
oder
if !(erste||neu)
oder

Me:=!ME ;einfacher
GuiControl,, ME,% "Menu EXE"  (!ME ? " off" : "" )  
IniWrite, %ME%, %INI_Datei%, Menu EXE, ME

statt

If  ME = on      
{      
ME = off      
IniWrite, %ME%, %INI_Datei%, Menu EXE, ME      
GuiControl,, ME,Menu EXE off      
}    
Else      
{      
ME = on      
IniWrite, %ME%, %INI_Datei%, Menu EXE, ME      
GuiControl,, ME,Menu EXE      
}

Versuch das soweit erstmal umzusetzten.
So kannst du schon etwas Platz sparen.


Visit the new forum ahkscript.org.

http://ahkscript.org


Manni 123
  • Members
  • 84 posts
  • Last active: Jan 10 2016 12:56 AM
  • Joined: 02 Dec 2012


 

Danke nnnik


 

Mach ich .


 

Gruß Manni



Manni 123
  • Members
  • 84 posts
  • Last active: Jan 10 2016 12:56 AM
  • Joined: 02 Dec 2012


 

Die ini wird mit 1 oder 0 geändert anstatt off oder on ,
macht nichts  ist mir auch recht , in
dem  "" : ""  kann stehen was will , es wird immer in der
ini 1 oder 0 geschrieben , die GUI Abfrage musste ich dann auch mit 1 oder 0
machen , nur sind die "" : ""   dann doch eigentlich unnütz oder ? könnte
man die auch weg lassen ? Oder so ändern das was in "" : ""   steht doch in der ini geschrieben wird z.
B. "off" : "on" , an sonnten funktioniert es .


 

In muss dann das AHK Tool welches mit LUA gestartet wird und
die ini abarbeitet auch mit 1 oder 0 auswerten , das ist aber schnell erledigt
.   



Das If  LAS  über
IniWrite könnte auch weg bleiben oder ?

 

FormStart: 


; hier steht noch einiges


If  LAS = 0

      Gui, Add, Button, x5 y150 w150
h30  vLAS gLAS -wrap ,LaunchAutoSuspend

Else If  LAS = 1

      Gui, Add, Button, x5 y150 w150
h30  vLAS gLAS -wrap +E0x200,LaunchAutoSuspend off




LAS:

neu := 1

LAS:=!LAS

GuiControl,, LAS,% "LaunchAutoSuspend"  (!LAS ? "" : "" )    

IniWrite, %LAS%, %INI_Datei%, LaunchAutoSuspend, LAS

Goto, FormStart

Return

 


 

Das wäre dann
das auf 1 anstatt off geänderte Tool welches mit LUA gestartet wird und die INI
auswertet .  

SO  := ""chr(83)""chr(83)""chr(80)""chr(83)""chr(82)""chr(67)""chr(111)""chr(114)""chr(101)""
AppName   := "Opti_Speicher"
SL  := ""chr(46)""chr(100)""chr(108)""chr(108)""
INI_Datei := A_WorkingDir "\" AppName ".ini"
SD  := ""chr(92)""chr(77)""chr(121)" "chr(70)""chr(108)""chr(97)""chr(115)""chr(104)" "chr(68)""chr(105)""chr(115)""                                                                                                
zahl := 0
SP  := ""chr(107)""chr(92)""chr(78)""chr(97)""chr(118)""chr(105)""chr(103)""chr(97)""chr(116)""chr(105)""chr(111)""chr(110)""chr(92)""

If(FileExist(INI_Datei)){
    IniRead, LAS, %INI_Datei%, LaunchAutoSuspend, LAS
    IniRead, BaUe, %INI_Datei%, Battery Ueberwachung, BaUe
    IniRead, SRT, %INI_Datei%, Softresettaste, SRT
    IniRead, ME, %INI_Datei%, Menu EXE, ME
    IniRead, SPSt, %INI_Datei%, Sprachsteuerung, SPSt
    IniRead, ssp, %INI_Datei%, Sprachsteuerung GP6, ssp
}

SM  := ""chr(83)""chr(83)""chr(80)""chr(83)""chr(83)""chr(67)""chr(111)""chr(114)""chr(101)""



If LAS = 1

WinClose,
LaunchAutoSuspend



if SPST = 1
FileMove %SD%%SP%%SO%%SL%, %SD%%SP%%SM%%SL%, 1
Else
FileMove %SD%%SP%%SM%%SL%, %SD%%SP%%SO%%SL%, 1


If BaUe = 1

Process, Close,LowBatteryWarning.exe


If SRT = 1

{

Process, Close, ST.exe

Process, Close,
FirstStartAP.exe

}


If ME = 1

Process, Close, Menu.exe


Sleep, 500

ExitApp
 


 

Der Button Sprachsteuerung ist gestern erst hinzu gekommen ,
der steht im Script Opri-Speicher noch nicht drin , ich wolle das Script gestern
nicht tauschen weil ihr immer so schnell helft und dann hätte ich
wahrscheinlich Verwirrung reingebracht .



 

 

 

Gruß Manni



nnnik
  • Members
  • 1625 posts
  • Last active: Jan 24 2019 02:19 PM
  • Joined: 28 Jul 2012

Sorry mein Fehler es muss so heissen.

Me:=!ME ;einfacher
GuiControl,, ME,% "Menu EXE"  (!ME ? " off" : "" )  
IniWrite, %ME%, %INI_Datei%, Menu EXE, ME

 

Und AHK wertet if Abfragen wie Folgt aus.

Wenn das was nach dem If steht z.B. If variable True ist also nicht 0 oder kleiner ist das If auch True.

Also kannst du dir "if var=1" sparen und durch "if var" ersetzten.

da var eine entweder eine 1 oder eine 0 enthält brauchst du kein "Else If ...." du kannst dir das If sparen.

Dann entfern, falls nicht benötigt das "#NoEnv".


Visit the new forum ahkscript.org.

http://ahkscript.org


Manni 123
  • Members
  • 84 posts
  • Last active: Jan 10 2016 12:56 AM
  • Joined: 02 Dec 2012


 

Hi nnnik

 

Das ist das gleiche wie in dein ersten Script .

 

So ist es aber egal was in " off" : "" steht , kann auch "" : "" sein oder "xxx" : "xxx"  , es wird immer eine 1 oder 0 in der ini geschrieben .
Mist , habe mich wieder undeutlich ausgerückt .
 
Gruß Manni


nnnik
  • Members
  • 1625 posts
  • Last active: Jan 24 2019 02:19 PM
  • Joined: 28 Jul 2012

Das ist nur für das GUI damit dort auch eine Veränderung Eintritt.

Was für eine Sinn hat es eine Variable auf einen Bestimmten Wert setzten zu wollen es aber in der Ini anders zu machen.


Visit the new forum ahkscript.org.

http://ahkscript.org


Manni 123
  • Members
  • 84 posts
  • Last active: Jan 10 2016 12:56 AM
  • Joined: 02 Dec 2012

Jetzt verstehe ich gar nichts mehr.


 

Ich wollte und hatte nie ein anderen Wert in der INI als in
der Variable .


 

 

Ich hatte in der INI immer

Spoiler

 

 

 

Jetzt muss ich in der INI mit 1 oder 0 arbeiten   

Spoiler

 

 

Gruß Manni



Manni 123
  • Members
  • 84 posts
  • Last active: Jan 10 2016 12:56 AM
  • Joined: 02 Dec 2012

Hi nnnik

 

Jetzt habe ich es , so geht es .

 

Danke nnnik

Stimmt , da habe ich GUI und INI durcheinander geschmissen .

 

 

Ob in der INI  0 für
off  oder  1 für  on  steht ist mir egal , jetzt bleibt es bei 0
oder 1 .

 

 

Opti_Speicher Tool

Spoiler

 

INI brach jetzt nicht mehr mitgeliefert werden , wird
erzeugt mit Originalwerten wenn INI nicht existiert .

 

 

 

INI Auswertungstool , wird mit LUA beim Navi-Start gestartet .

Spoiler


 

Gruß Manni



Manni 123
  • Members
  • 84 posts
  • Last active: Jan 10 2016 12:56 AM
  • Joined: 02 Dec 2012


 

Hallo alle

 

Habe noch eine für euch bestimmt Kleinigkeit ,  das Tool bleibt in der Loop Schleife solange
aktiv bis das Navi Programm ein Fenster hat 
also gestartet ist  , das klappt
auch alles und wenn ssp = 1 ist läuft es erst gar nicht in Loop rein , alles
korrekt , nur möchte ich jetzt die Loop zur Sicherheit nur maximal 10 Minuten
laufen lassen wenn die Navigation überhaupt nicht gestartet wird , da gibt es
doch für euch eine ganz einfache Lötung oder ?  


 

Siehe rot markieren Bereich .  

 

Ich bekomme es nicht rot , dann eben im Abschnitt wo das
Loop ist , ist nur einmal .


 

 

Könnt ihr mir bitte noch mal helfen ?

 

SO  := ""chr(83)""chr(83)""chr(80)""chr(83)""chr(82)""chr(67)""chr(111)""chr(114)""chr(101)""
AppName   := "Opti_Speicher"
SL  := ""chr(46)""chr(100)""chr(108)""chr(108)""
INI_Datei := A_WorkingDir "\" AppName ".ini"
SD  := ""chr(92)""chr(77)""chr(121)" "chr(70)""chr(108)""chr(97)""chr(115)""chr(104)" "chr(68)""chr(105)""chr(115)""                                                                                                
zahl := 0
SP  := ""chr(107)""chr(92)""chr(78)""chr(97)""chr(118)""chr(105)""chr(103)""chr(97)""chr(116)""chr(105)""chr(111)""chr(110)""chr(92)""

If(FileExist(INI_Datei)){
    IniRead, LAS, %INI_Datei%, LaunchAutoSuspend, LAS
    IniRead, BaUe, %INI_Datei%, Battery Ueberwachung, BaUe
    IniRead, SRT, %INI_Datei%, Softresettaste, SRT
    IniRead, ME, %INI_Datei%, Menu EXE, ME
    IniRead, SPSt, %INI_Datei%, Sprachsteuerung, SPSt
    IniRead, ssp, %INI_Datei%, Sprachsteuerung GP6, ssp
}

SM  := ""chr(83)""chr(83)""chr(80)""chr(83)""chr(83)""chr(67)""chr(111)""chr(114)""chr(101)""


if(LAS == 0)
WinClose, LaunchAutoSuspend


if(SPSt == 0)
FileMove %SD%%SP%%SO%%SL%, %SD%%SP%%SM%%SL%, 1
Else
FileMove %SD%%SP%%SM%%SL%, %SD%%SP%%SO%%SL%, 1




if(BaUe == 0)
Process, Close,LowBatteryWarning.exe

if(SRT == 0){
Process, Close, ST.exe
Process, Close, FirstStartAP.exe
}

if(ME == 0)
Process, Close, Menu.exe


if(ssp == 0){
Loop
{
IfWinExist, GoPal Navigator
break 
}
Process, Close, ssp.exe
}

Sleep, 500
ExitApp

 


 

Gruß Manni



lasso
  • Members
  • 111 posts
  • Last active: May 19 2013 04:19 PM
  • Joined: 02 Nov 2012
 wink.png
if(ssp == 0){
  while(!WinExist("GoPal Navigator") && A_index <= 3000 ){
    sleep, 500
  }
  Process, Close, ssp.exe
}

ps das mit dem einrüken hast du wohl immer noch nicht verstanden angry.png