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
Manni 123
  • Members
  • 84 posts
  • Last active: Jan 10 2016 12:56 AM
  • Joined: 02 Dec 2012

Hallo alle , nachträglich ein frohes Neues Jahr .

 

Ihr wisst bestimmt Rat .

 

Diese Sprungmarken Seite3: bis Seite12: kann ich ja nicht in eine Loop oder For Schleife packen , oder ?

 

Gibt es eine andere Vorgehensweise um den Spagetticode los zu werden ?

 

Seite1: und Seite 2: sind ein bisschen anders , die müssen ja nicht mit in der Loop oder For Schleife , wenn es doch gehen würde um so besser .

 

Die Seite1: biss Seite12: werden von GUI angesprungen , ich wies das wist ihr auch ohne diese Bemerkung .

 

 

Gruß Manni

 

Spoiler


Seidenweber
  • Moderators
  • 638 posts
  • Last active: Sep 06 2015 01:51 PM
  • Joined: 10 May 2011

...mit welcher AHK-Version muss das denn laufen?


All questions & answers are related to AHK 1.1.19.03 x64 Unicode

 


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

Hallo Seidenweber
 
Die Ahk2Exe hat die Versionsnummer 1,0,48,03
 
Die AutoHotkey  ist die V. 1.0.48.5
 
Ist für WinCE .
 
Hoffe das die Angaben reichen .
 
Gruß Manni
 
 
Ich weis nicht wie ich das Script im Spoiler setze .
Das ganze Script sieht so aus , vielleicht ist es so besser nach zu vollziehen .
 

Spoiler


IsNull
  • Moderators
  • 990 posts
  • Last active: May 15 2014 11:56 AM
  • Joined: 10 May 2007

AHK_L - was mittlerweile die anerkannte aktuelle AHK Version ist - hat einige Syntax Verbesserungen, die den Code schlanker und besser lesbar machen.

- Mit einem Array kannst du dir eine einfachere Datenstruktur bauen.
- - z.B. ein Mapping um ein Wert einem anderen Wert zuzuweisen.
- Bei Labels kann man mit der Variablen A_ThisLabel auf den Label Namen zugreifen. Da kann man z.B. eine Zahl extrahieren...
 
 
 

if Bild_map = 1
{
Bild_map := 1
return
}

Wie kommt man auf solchen in sich redundanten Code? Das grenzt schon fast an modere Kunst. Nutzt nix, sieht aber gut aus icon_razz.gif

Im übrigen würde ich dir nahelegen, Klammern bei ifs zu benutzen. Dann gibt es keine Durcheinander weil du immer mit Expressions arbeitest.

 

 

Auch spezielle ifs wie "IfExist" sollte man vermeiden, und stattdessen ein normales if mit einer passenden Methode kombinieren. - Diese spezial Ifs werden nämlich entfernt.

 

if( FileExist("C:\ich\bin\da.doc") )
{
   msgbox huhu
}

 

 

Vielleicht hilft dir meine AHK Einsteiger Guide weiter, da kannst du dir die Grundlagen aneignen: http://securityvisio...t_ahkGuides.php



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

Aber beim AHK für WinCE stehen mir diese Syntax Verbesserungen nicht zur Verfügung .

 

 

Danke IsNull

If (FileExists("***"))  probiere ich .
 
 
Hier mal ein VIDEO worum es sich handelt .
 
Gruß Manni


lasso
  • Members
  • 111 posts
  • Last active: May 19 2013 04:19 PM
  • Joined: 02 Nov 2012

hier ein erster ansatz

nix getestet


; Script MapColor Tauscher WinCE
#Persistent                        ;bewirkt das permanente Laufen eines Scriptes
#NoEnv                         ;verhindert Prüfung von leeren Variablen
#SingleInstance force                     ;bewirkt die Einzelinstanz eines Scriptes
#NoTrayIcon                        ;Verhindert das Erscheinen des Tools im Tray(Trayicon)

SendMode Input
SetBatchLines, -1

  AppName = MapColorTauscher_WinCE
  Version          := 3
  Language         := DE
  map              := 0
  Seite_aktuell    := 1
  Bild_map         := 1
  inipfad          := A_WorkingDir "\" AppName ".ini"
  sourcefolder_bmp := "\My Flash Disk\Programme\Tauscher_Bilder\mapcolor\mapFarben\"
  sourcefolder_mbf := "\My Flash Disk\Programme\Tauscher_Bilder\mapcolor\"
  savefolder       := "\My Flash Disk\Navigation\MapConfigs\"
  Bild_map_Seiten  := "3,5,7,9,11,13,15,17,19,21"

  Gui +LastFound -MinimizeBox ;+AlwaysOnTop
  Gui, font, s9, Arial
  bildnummer := 0
  Gui, Add, Button, x0   y0 w40 h26 vansicht3 gansicht3 -wrap,Nacht
  Gui, Add, Button, x55  y0 w80 h26 vansicht4 gansicht4 -wrap,T.Höhenprofil
  Gui, Add, Button, x398 y0 w80 h26 vansicht5 gansicht5 -wrap,N.Höhenprofil
  Gui, Add, Picture, x0 y=0 w478 h224 gklick_map vbild%Bild_map% Hwndhbild_map, % sourcefolder_bmp Bild_map "_" map+1 ".bmp"
  Gui, font, s14, Arial
  Gui, Add, Button, x0   y223 w30 h25 vSeite1  gSeite1  -wrap,<
  Gui, Add, Button, x448 y223 w30 h25 vSeite2  gSeite2  -wrap,>
  Gui, Add, Button, x43  y223 w30 h25 vSeite3  gSeite3  -wrap,3
  Gui, Add, Button, x83  y223 w30 h25 vSeite4  gSeite4  -wrap,5
  Gui, Add, Button, x123 y223 w30 h25 vSeite5  gSeite5  -wrap,7
  Gui, Add, Button, x163 y223 w30 h25 vSeite6  gSeite6  -wrap,9
  Gui, Add, Button, x203 y223 w30 h25 vSeite7  gSeite7  -wrap,11
  Gui, Add, Button, x243 y223 w30 h25 vSeite8  gSeite8  -wrap,13
  Gui, Add, Button, x283 y223 w30 h25 vSeite9  gSeite9  -wrap,15
  Gui, Add, Button, x323 y223 w30 h25 vSeite10 gSeite10 -wrap,17
  Gui, Add, Button, x363 y223 w30 h25 vSeite11 gSeite11 -wrap,19
  Gui, Add, Button, x403 y223 w30 h25 vSeite12 gSeite12 -wrap,21
  Gui, Submit, NoHide
  Gui, Show, x0  y0  w478 h247,% (wert > 0
    ? "MapColor Tauscher V.3" : "create by Manni 123") "     Map " Bild_map
return

ansicht3:
ansicht4:
ansicht5:
  If FileExist(sourcefolder_mbf "\" . Bild_map . "_" . (SubStr(A_ThisLabel,0,1)-1) . "*.mbf")
  || FileExist(sourcefolder_mbf "\" . Bild_map . "_" . (SubStr(A_ThisLabel,0,1)-1) . "*.mxf"){
    wert := 1
    map := SubStr(A_ThisLabel,0,1) - 2
    GuiControl,Picture,hbild_map, % sourcefolder_bmp . Bild_map "_" . map+1 . ".bmp"
    Gui,Show,,% "MapColor Tauscher V.3" . Bild_map
  }
  GuiControl,Disable,A_ThisLabel,
Return

Seite1:
Seite2:
  wert := 1
  map  := 0
  if(A_ThisLabel == "Seite1" ? (Bild_map > 1) : (Bild_map < 23)){
    Bild_map += A_ThisLabel == "Seite1" ? 1 : -1
    If FileExist(sourcefolder_mbf "\" Bild_map "*.mbf")
    || FileExist(sourcefolder_mbf "\" Bild_map "*.mxf"){
      GuiControl,Picture,hbild_map, % sourcefolder_bmp . Bild_map "_" . map+1 . ".bmp"
      Gui,Show,,% "create by Manni 123     Map " . Bild_map
    }
  }
Return

Seite3:
Seite4:
Seite5:
Seite6:
Seite7:
Seite8:
Seite9:
Seite10:
Seite11:
Seite12:
Loop,parse,Bild_map_Seiten, `,
  if((SubStr(A_ThisLabel,0,1)-2) == A_Index){
    Bild_map := A_LoopField
    gosub, Seite
    break
  }
Return


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

Danke lasso

 

Obendrein ist dein Script auch noch kürzer .

 

WinCE , besonders das aufs Minimum reduzierte Navi WinCE  kommt mit den meisten  AHK Befehle nicht zurecht , nicht mal mit allen die für WinCE freigegeben sind .

 

 GuiControl,Picture, *****  geht nicht auf unser WinCE , deswegen  das gosub, FormStart was nicht schön ist weil sich alles neu aufbauen muss ,  dadurch hat sich das darunter liegende   Gui,Show,, *** auch erledigt .
 
Die anderen Änderungen habe ich kommentiert .
 
Seite mit zweistellige Zahlen kann ich nicht durch den Button anspringen .
 
Ach so ,
if(A_ThisLabel == "Seite2" ? (Bild_map > 1) : (Bild_map < 23)){
 
und
Bild_map += A_ThisLabel == "Seite2" ? 1 : -1
 
Musste ich auf Seite2 anstatt Seite1 beziehen sonst sind diese Buttons vertauscht .
 
Danke für deine Mühen , sieht sehr ordentlich aus 
 
Gruß Manni  
 

Ich finde den Spoiler Button nicht .

; Script MapColor Tauscher WinCE
#Persistent                        ;bewirkt das permanente Laufen eines Scriptes
#NoEnv                         ;verhindert Prüfung von leeren Variablen
#SingleInstance force                     ;bewirkt die Einzelinstanz eines Scriptes
#NoTrayIcon                        ;Verhindert das Erscheinen des Tools im Tray(Trayicon)

SendMode Input
SetBatchLines, -1

  AppName = MapColorTauscher_WinCE
  Version          := 3
  Language         := DE
  map              := 0
  Seite_aktuell    := 1
  Bild_map         := 1
  inipfad          := A_WorkingDir "\" AppName ".ini"
  sourcefolder_bmp := "\My Flash Disk\Programme\Tauscher_Bilder\mapcolor\mapFarben\"
  sourcefolder_mbf := "\My Flash Disk\Programme\Tauscher_Bilder\mapcolor\"
  savefolder       := "\My Flash Disk\Navigation\MapConfigs\"
  Bild_map_Seiten  := "3,5,7,9,11,13,15,17,19,21"

FormStart:                     
Gui, Destroy
Gui -MinimizeBox

  Gui, Cancel

  Gui +LastFound -MinimizeBox ;+AlwaysOnTop
  Gui, font, s9, Arial
  bildnummer := 0
  Gui, Add, Button, x0   y0 w40 h26 vansicht3 gansicht3 -wrap,Nacht
  Gui, Add, Button, x55  y0 w80 h26 vansicht4 gansicht4 -wrap,T.Höhenprofil
  Gui, Add, Button, x398 y0 w80 h26 vansicht5 gansicht5 -wrap,N.Höhenprofil
  Gui, Add, Picture, x0 y=0 w478 h224 gklick_map vbild%Bild_map% Hwndhbild_map, % sourcefolder_bmp Bild_map "_" map+1 ".bmp"
  Gui, font, s14, Arial
  Gui, Add, Button, x0   y223 w30 h25 vSeite1  gSeite1  -wrap,<
  Gui, Add, Button, x448 y223 w30 h25 vSeite2  gSeite2  -wrap,>
  Gui, Add, Button, x43  y223 w30 h25 vSeite3  gSeite3  -wrap,3
  Gui, Add, Button, x83  y223 w30 h25 vSeite4  gSeite4  -wrap,5
  Gui, Add, Button, x123 y223 w30 h25 vSeite5  gSeite5  -wrap,7
  Gui, Add, Button, x163 y223 w30 h25 vSeite6  gSeite6  -wrap,9
  Gui, Add, Button, x203 y223 w30 h25 vSeite7  gSeite7  -wrap,11
  Gui, Add, Button, x243 y223 w30 h25 vSeite8  gSeite8  -wrap,13
  Gui, Add, Button, x283 y223 w30 h25 vSeite9  gSeite9  -wrap,15
  Gui, Add, Button, x323 y223 w30 h25 vSeite10 gSeite10 -wrap,17
  Gui, Add, Button, x363 y223 w30 h25 vSeite11 gSeite11 -wrap,19
  Gui, Add, Button, x403 y223 w30 h25 vSeite12 gSeite12 -wrap,21
  Gui, Submit, NoHide
  Gui, Show, x0  y0  w478 h247,% (wert > 0
    ? "MapColor Tauscher V.3" : "create by Manni 123") "     Map " Bild_map
    
return

ansicht3:
ansicht4:
ansicht5:
  If FileExist(sourcefolder_mbf "\" . Bild_map . "_" . (SubStr(A_ThisLabel,0,1)-1) . "*.mbf")
  || FileExist(sourcefolder_mbf "\" . Bild_map . "_" . (SubStr(A_ThisLabel,0,1)-1) . "*.mxf"){
    wert := 1
    map := SubStr(A_ThisLabel,0,1) - 2
;    GuiControl,Picture,hbild_map, % sourcefolder_bmp . Bild_map "_" . map+1 . ".bmp"  ; geht nicht unter WinCE deswegen gosub, FormStart
;  Gui,Show,,% "MapColor Tauscher V.3" . Bild_map  ;  bei gosub, FormStart brauch das nicht
  }
  GuiControl,Disable,A_ThisLabel,
 gosub, FormStart
Return

Seite1:
Seite2:
  wert := 1
  map  := 0
if Bild_map < 2 ; muss sonst zählt es weniger als 1
{
Bild_map := 1
return
}
if Bild_map > 22 ; muss sonst zählt es  mehr als 23
{
Bild_map := 23
return
}
  if(A_ThisLabel == "Seite2" ? (Bild_map > 1) : (Bild_map < 23)){
    Bild_map += A_ThisLabel == "Seite2" ? 1 : -1
    If FileExist(sourcefolder_mbf "\" Bild_map "*.mbf")
    || FileExist(sourcefolder_mbf "\" Bild_map "*.mxf"){
;      GuiControl,Picture,hbild_map, % sourcefolder_bmp . Bild_map "_" . map+1 . ".bmp" ; geht nicht unter WinCE deswegen gosub, FormStart
;      Gui,Show,,% "create by Manni 123     Map " . Bild_map ;  bei gosub, FormStart brauch das nicht
    }
  }
 gosub, FormStart
Return

Seite3:
Seite4:
Seite5:
Seite6:
Seite7:
Seite8:
Seite9:
Seite10: ; zweistellig geht nicht , mit Seite2 als Einzelschritt schon
Seite11: ; "
Seite12: ; "
Loop,parse,Bild_map_Seiten, `,
  if((SubStr(A_ThisLabel,0,1)-2) == A_Index){
    Bild_map := A_LoopField
    gosub, Seite
    break
  }
Return


Seite:
Loop %Bild_map%
{
wert := 1
map = 0
If (FileExist( "%sourcefolder_mbf%\%Bild_map%*.mbf" ) or ( "%sourcefolder_mbf%\%Bild_map%*.mxf" ))
gosub, FormStart
break
}
Return


klick_map:
  if(RegExMatch(A_GuiControl,"(\d*)$", out))
   { ;// Control Nummer (index) aus A_GuiControl extrahieren
    imgIndex := out1 + ((Bild_map-1) // 25 ) ; und in imgIndex schreiben


msgbox, 262145 , , MapColor %imgIndex%
IfMsgBox OK
{
 imgIndex2 := 1

      If (FileExist ("%sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mxf"))
      {
      FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mxf, %savefolder%mapconfig_default_0.mxf, 1
    FileDelete, %savefolder%mapconfig_default_0.mbf
    }
    Else
    FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mbf, %savefolder%mapconfig_default_0.mbf, 1
      imgIndex2 := imgIndex2 + 1
      If (FileExist ("%sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mxf"))
      {
      FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mxf, %savefolder%mapconfig_default_1.mxf, 1
    FileDelete, %savefolder%mapconfig_default_1.mbf
    }
    Else
      FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mbf, %savefolder%mapconfig_default_1.mbf, 1
    imgIndex2 := imgIndex2 + 1
    If (FileExist ("%sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mxf"))
      {
      FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mxf, %savefolder%mapconfig_default_0_DTM.mxf, 1
    FileDelete, %savefolder%mapconfig_default_0_DTM.mbf
    }
    Else
    FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mbf, %savefolder%mapconfig_default_0_DTM.mbf, 1
    imgIndex2 := imgIndex2 + 1
    If (FileExist ("%sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mxf"))
      {
      FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mxf, %savefolder%mapconfig_default_1_DTM.mxf, 1
    FileDelete, %savefolder%mapconfig_default_1_DTM.mbf
    }
    Else
    FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mbf, %savefolder%mapconfig_default_1_DTM.mbf, 1
}
Return
}
Return

GuiClose:          ; Aktionen beim Schließen des Tools
ExitApp


lasso
  • Members
  • 111 posts
  • Last active: May 19 2013 04:19 PM
  • Joined: 02 Nov 2012
; Script MapColor Tauscher WinCE
#Persistent                        ;bewirkt das permanente Laufen eines Scriptes
#NoEnv                         ;verhindert Prüfung von leeren Variablen
#SingleInstance force                     ;bewirkt die Einzelinstanz eines Scriptes
#NoTrayIcon                        ;Verhindert das Erscheinen des Tools im Tray(Trayicon)

SendMode Input
SetBatchLines, -1

  AppName = MapColorTauscher_WinCE
  Version          := 3
  Language         := DE
  map              := 0
  Seite_aktuell    := 1
  Bild_map         := 1
  inipfad          := A_WorkingDir "\" AppName ".ini"
  sourcefolder_bmp := "\My Flash Disk\Programme\Tauscher_Bilder\mapcolor\mapFarben\"
  sourcefolder_mbf := "\My Flash Disk\Programme\Tauscher_Bilder\mapcolor\"
  savefolder       := "\My Flash Disk\Navigation\MapConfigs\"
  Bild_map_Seiten  := "3,5,7,9,11,13,15,17,19,21"

FormStart:
  Gui, Destroy
  Gui -MinimizeBox
  Gui, Cancel
  Gui +LastFound -MinimizeBox ;+AlwaysOnTop
  Gui, font, s9, Arial
  bildnummer := 0
  Gui, Add, Button, x0   y0 w40 h26 vansicht3 gansicht3 -wrap,Nacht
  Gui, Add, Button, x55  y0 w80 h26 vansicht4 gansicht4 -wrap,T.Höhenprofil
  Gui, Add, Button, x398 y0 w80 h26 vansicht5 gansicht5 -wrap,N.Höhenprofil
  Gui, Add, Picture, x0 y=0 w478 h224 gklick_map vbild%Bild_map% Hwndhbild_map, % sourcefolder_bmp Bild_map "_" map+1 ".bmp"
  Gui, font, s14, Arial
  Gui, Add, Button, x0   y223 w30 h25 vSeite1  gSeite1  -wrap,<
  Gui, Add, Button, x448 y223 w30 h25 vSeite2  gSeite2  -wrap,>
  Gui, Add, Button, x43  y223 w30 h25 vSeite3  gSeite3  -wrap,3
  Gui, Add, Button, x83  y223 w30 h25 vSeite4  gSeite4  -wrap,5
  Gui, Add, Button, x123 y223 w30 h25 vSeite5  gSeite5  -wrap,7
  Gui, Add, Button, x163 y223 w30 h25 vSeite6  gSeite6  -wrap,9
  Gui, Add, Button, x203 y223 w30 h25 vSeite7  gSeite7  -wrap,11
  Gui, Add, Button, x243 y223 w30 h25 vSeite8  gSeite8  -wrap,13
  Gui, Add, Button, x283 y223 w30 h25 vSeite9  gSeite9  -wrap,15
  Gui, Add, Button, x323 y223 w30 h25 vSeite10 gSeite10 -wrap,17
  Gui, Add, Button, x363 y223 w30 h25 vSeite11 gSeite11 -wrap,19
  Gui, Add, Button, x403 y223 w30 h25 vSeite12 gSeite12 -wrap,21
  Gui, Submit, NoHide
  Gui, Show, x0  y0  w478 h247,% (wert > 0
    ? "MapColor Tauscher V.3" : "create by Manni 123") "     Map " Bild_map
return

ansicht3:
ansicht4:
ansicht5:
  If FileExist(sourcefolder_mbf "\" . Bild_map . "_" . (SubStr(A_ThisLabel,0,1)-1) . "*.mbf")
  || FileExist(sourcefolder_mbf "\" . Bild_map . "_" . (SubStr(A_ThisLabel,0,1)-1) . "*.mxf"){
    wert := 1
    map := SubStr(A_ThisLabel,0,1) - 2
    gosub, FormStart
  }
  GuiControl,Disable,A_ThisLabel,
Return

Seite1:
Seite2:
  wert := 1
  map  := 0
  if(Bild_map > 2 && Bild_map < 22){
    Bild_map += A_ThisLabel == "Seite2" ? 1 : -1
    If FileExist(sourcefolder_mbf "\" Bild_map "*.mbf")
    || FileExist(sourcefolder_mbf "\" Bild_map "*.mxf"){
      gosub, FormStart
    }
  }
Return

Seite3:
Seite4:
Seite5:
Seite6:
Seite7:
Seite8:
Seite9:
Seite10:
Seite11:
Seite12:
Loop,parse,Bild_map_Seiten, `,
  if((SubStr(A_ThisLabel,6)-2) == A_Index){
    Bild_map := A_LoopField
    gosub, Seite
    break
  }
Return

Seite:
Loop % Bild_map {
  wert := 1
  map = 0
  If(FileExist(sourcefolder_mbf . "\" . Bild_map . "*.mbf")
  || FileExist(sourcefolder_mbf . "\" . Bild_map . "*.mxf"))
    gosub, FormStart
  break
}
Return

klick_map:
  if(RegExMatch(A_GuiControl,"(\d*)$", out)){ ;// Control Nummer (index) aus A_GuiControl extrahieren
    imgIndex := out1 + ((Bild_map-1) // 25 ) ; und in imgIndex schreiben
    msgbox, 262145 , , MapColor %imgIndex%
    IfMsgBox OK
    { imgIndex2 := 1
      If(FileExist (sourcefolder_mbf . imgIndex . "_" . imgIndex2 . "*.mxf")){
        FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mxf, %savefolder%mapconfig_default_0.mxf, 1
        FileDelete, %savefolder%mapconfig_default_0.mbf
      }Else
        FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mbf, %savefolder%mapconfig_default_0.mbf, 1
      ++imgIndex2
      If(FileExist (sourcefolder_mbf . imgIndex . "_" . imgIndex2 . "*.mxf")){
        FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mxf, %savefolder%mapconfig_default_1.mxf, 1
        FileDelete, %savefolder%mapconfig_default_1.mbf
      }Else
        FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mbf, %savefolder%mapconfig_default_1.mbf, 1
      ++imgIndex2
      If(FileExist (sourcefolder_mbf . imgIndex . "_" . imgIndex2 . "*.mxf")){
        FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mxf, %savefolder%mapconfig_default_0_DTM.mxf, 1
        FileDelete, %savefolder%mapconfig_default_0_DTM.mbf
      }Else
        FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mbf, %savefolder%mapconfig_default_0_DTM.mbf, 1
      ++imgIndex2
      If(FileExist (sourcefolder_mbf . imgIndex . "_" . imgIndex2 . "*.mxf")){
        FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mxf, %savefolder%mapconfig_default_1_DTM.mxf, 1
        FileDelete, %savefolder%mapconfig_default_1_DTM.mbf
      }Else
        FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mbf, %savefolder%mapconfig_default_1_DTM.mbf, 1
    }
  }
Return

GuiClose:          ; Aktionen beim Schließen des Tools
  ExitApp


IsNull
  • Moderators
  • 990 posts
  • Last active: May 15 2014 11:56 AM
  • Joined: 10 May 2007

Hm, ich dachte dass ...

 

The source code is from Autohotkey 1.0.48.02 but this does not mean that everything is working yet.
03-04-10 Used Autohotkey_L (unicode) as source.

 

... bedeutet dass die AHK_L Syntax Anpassungen ebenfalls enthalten sind im aktuellen build.

 

Kann das aber nicht testen mangels WinCE Umgebung.



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

Hallo IsNull

 

Die AutoHotkey_L  ist die 1.1.7.3 , ich dache aber die wäre für normal Windows .

 

Gruß Manni



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

Hi  Lasso

 

Danke danke

 

Es geht jetzt alles , habe den Tauscher bis 23 MapColors voll gemacht aber mit Map 1 und Map 23 anstatt nur Map2 bis Map 22 .

 

Und es geht jetzt so schnell das der Hintergrund vom SkinMenü beim Seiten neu Aufbau (gosub, FormStart ) nicht mehr zu sehen ist wie beim ersten Video , bei diesem Video ist nichts geschnitten .

 

Nur wenn ich auf Map 1 mit Einzelschritt ( Seite1 ) bin komme ich da nicht mehr raus mit Einzelschritt ( Seite2 ), mit Button 3 ( Seite3) bis Button 12  (Seite21)  komme ich raus , das reich mir auch .

 

Gruß Manni

 

 

 

 

 

[spoiler]
; Script MapColor Tauscher WinCE

#Persistent                        ;bewirkt das permanente Laufen eines Scriptes
#NoEnv                         ;verhindert Prüfung von leeren Variablen
#SingleInstance force                     ;bewirkt die Einzelinstanz eines Scriptes
#NoTrayIcon                        ;Verhindert das Erscheinen des Tools im Tray(Trayicon)


SendMode Input
SetBatchLines, -1


  AppName = MapColorTauscher_WinCE
  Version          := 3
  Language         := DE
  map              := 0
  Seite_aktuell    := 1
  Bild_map         := 1
  inipfad          := A_WorkingDir "\" AppName ".ini"
  sourcefolder_bmp := "\My Flash Disk\Programme\Tauscher_Bilder\mapcolor\mapFarben\"
  sourcefolder_mbf := "\My Flash Disk\Programme\Tauscher_Bilder\mapcolor\"
  savefolder       := "\My Flash Disk\Navigation\MapConfigs\"
  Bild_map_Seiten  := "3,5,7,9,11,13,15,17,19,21"


FormStart:
  Gui, Destroy
  Gui -MinimizeBox
  Gui, Cancel
  Gui +LastFound -MinimizeBox ;+AlwaysOnTop
  Gui, font, s9, Arial
  bildnummer := 0
  Gui, Add, Button, x0   y0 w40 h26 vansicht3 gansicht3 -wrap,Nacht
  Gui, Add, Button, x55  y0 w80 h26 vansicht4 gansicht4 -wrap,T.Höhenprofil
  Gui, Add, Button, x398 y0 w80 h26 vansicht5 gansicht5 -wrap,N.Höhenprofil
  Gui, Add, Picture, x0 y=0 w478 h224 gklick_map vbild%Bild_map% Hwndhbild_map, % sourcefolder_bmp Bild_map "_" map+1 ".bmp"
  Gui, font, s14, Arial
  Gui, Add, Button, x0   y223 w30 h25 vSeite1  gSeite1  -wrap,<
  Gui, Add, Button, x448 y223 w30 h25 vSeite2  gSeite2  -wrap,>
  Gui, Add, Button, x43  y223 w30 h25 vSeite3  gSeite3  -wrap,3
  Gui, Add, Button, x83  y223 w30 h25 vSeite4  gSeite4  -wrap,5
  Gui, Add, Button, x123 y223 w30 h25 vSeite5  gSeite5  -wrap,7
  Gui, Add, Button, x163 y223 w30 h25 vSeite6  gSeite6  -wrap,9
  Gui, Add, Button, x203 y223 w30 h25 vSeite7  gSeite7  -wrap,11
  Gui, Add, Button, x243 y223 w30 h25 vSeite8  gSeite8  -wrap,13
  Gui, Add, Button, x283 y223 w30 h25 vSeite9  gSeite9  -wrap,15
  Gui, Add, Button, x323 y223 w30 h25 vSeite10 gSeite10 -wrap,17
  Gui, Add, Button, x363 y223 w30 h25 vSeite11 gSeite11 -wrap,19
  Gui, Add, Button, x403 y223 w30 h25 vSeite12 gSeite12 -wrap,21
  Gui, Submit, NoHide
  Gui, Show, x0  y0  w478 h247,% (wert > 0
    ? "MapColor Tauscher V.3" : "create by Manni 123") "     Map " Bild_map
return


ansicht3:
ansicht4:
ansicht5:
  If FileExist(sourcefolder_mbf "\" . Bild_map . "_" . (SubStr(A_ThisLabel,0,1)-1) . "*.mbf")
  || FileExist(sourcefolder_mbf "\" . Bild_map . "_" . (SubStr(A_ThisLabel,0,1)-1) . "*.mxf"){
    wert := 1
    map := SubStr(A_ThisLabel,0,1) - 2
    gosub, FormStart
  }
  GuiControl,Disable,A_ThisLabel,
Return


Seite1:
Seite2:
  wert := 1
  map  := 0
  if(Bild_map > 1 && Bild_map < 23){
    Bild_map += A_ThisLabel == "Seite2" ? 1 : -1
    If FileExist(sourcefolder_mbf "\" Bild_map "*.mbf")
    || FileExist(sourcefolder_mbf "\" Bild_map "*.mxf"){
      gosub, FormStart
    }
  }
Return


Seite3:
Seite4:
Seite5:
Seite6:
Seite7:
Seite8:
Seite9:
Seite10:
Seite11:
Seite12:
Loop,parse,Bild_map_Seiten, `,
  if((SubStr(A_ThisLabel,6)-2) == A_Index){
    Bild_map := A_LoopField
    gosub, Seite
    break
  }
Return


Seite:
Loop % Bild_map {
  wert := 1
  map = 0
  If(FileExist(sourcefolder_mbf . "\" . Bild_map . "*.mbf")
  || FileExist(sourcefolder_mbf . "\" . Bild_map . "*.mxf"))
    gosub, FormStart
  break
}
Return


klick_map:
  if(RegExMatch(A_GuiControl,"(\d*)$", out)){ ;// Control Nummer (index) aus A_GuiControl extrahieren
    imgIndex := out1 + ((Bild_map-1) // 25 ) ; und in imgIndex schreiben
    msgbox, 262145 , , MapColor %imgIndex%
    IfMsgBox OK
    { imgIndex2 := 1
      If(FileExist (sourcefolder_mbf . imgIndex . "_" . imgIndex2 . "*.mxf")){
        FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mxf, %savefolder%mapconfig_default_0.mxf, 1
        FileDelete, %savefolder%mapconfig_default_0.mbf
      }Else
        FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mbf, %savefolder%mapconfig_default_0.mbf, 1
      ++imgIndex2
      If(FileExist (sourcefolder_mbf . imgIndex . "_" . imgIndex2 . "*.mxf")){
        FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mxf, %savefolder%mapconfig_default_1.mxf, 1
        FileDelete, %savefolder%mapconfig_default_1.mbf
      }Else
        FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mbf, %savefolder%mapconfig_default_1.mbf, 1
      ++imgIndex2
      If(FileExist (sourcefolder_mbf . imgIndex . "_" . imgIndex2 . "*.mxf")){
        FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mxf, %savefolder%mapconfig_default_0_DTM.mxf, 1
        FileDelete, %savefolder%mapconfig_default_0_DTM.mbf
      }Else
        FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mbf, %savefolder%mapconfig_default_0_DTM.mbf, 1
      ++imgIndex2
      If(FileExist (sourcefolder_mbf . imgIndex . "_" . imgIndex2 . "*.mxf")){
        FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mxf, %savefolder%mapconfig_default_1_DTM.mxf, 1
        FileDelete, %savefolder%mapconfig_default_1_DTM.mbf
      }Else
        FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mbf, %savefolder%mapconfig_default_1_DTM.mbf, 1
    }
  }
Return


GuiClose:          ; Aktionen beim Schließen des Tools
  ExitApp


[/spoiler]


lasso
  • Members
  • 111 posts
  • Last active: May 19 2013 04:19 PM
  • Joined: 02 Nov 2012
Seite1:
Seite2:
  if((Bild_map >  1  && Bild_map < 23)
  || (Bild_map == 1  && A_ThisLabel == "Seite2")
  || (Bild_map == 23 && A_ThisLabel == "Seite1")){
    Bild_map += A_ThisLabel == "Seite2" ? 1 : -1
    gosub, Seite
  }
Return

Seite3:
Seite4:
Seite5:
Seite6:
Seite7:
Seite8:
Seite9:
Seite10:
Seite11:
Seite12:
Loop,parse,Bild_map_Seiten, `,
  if((SubStr(A_ThisLabel,6)-2) == A_Index){
    Bild_map := A_LoopField
    break
  }

Seite:
  wert := 1
  map = 0
  If(FileExist(sourcefolder_mbf . "\" . Bild_map . "*.mbf")
  || FileExist(sourcefolder_mbf . "\" . Bild_map . "*.mxf")){
    gosub, FormStart
  }
Return

icon_wink.gif



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

Perfekt   smile.png

 

Danke danke Lasso

 

Gruß Manni



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

Hallo Lasso

 

Doch ein Problem mit If (FileExist .

 

Ich habe jetzt erst auf dem anderen Navi wo auch die *.mbf gehen festgestellt das es bei *.mbf Dateien nicht an Else rankommt  , für   If (FileExist *.mxf existiert immer diese Datei , auch wenn sie zu 100% nicht im  sourcefolder_mbf Ordner existiert .

Bei mein If (FileExist genauso siehe Kommentar .

Nur das alte IfExist von mit geht , liegt wohl an dem Navi WinCE .

 

Auf dem Navi wo ich zuerst getestet hatte gehen nur *.mxf Dateien , deswegen werden die *.mbf Dateien gelöscht und die Navigation erzeugt aus der *.mxf eine neue *.mbf , nur diese neuen *.mbf funktionieren auf dieser Navigation , wogegen die *.mxf auf beide Navigationen funktionieren .

 

Ist ein bisschen verwirrend die *.mxf *.mbf Geschichte .

 

Ich glaube mit  If (FileExist und  IfExist auf WinCE habe ich früher schon mal gekämpft .

 

 

Obwohl dieses von dir zu gehen scheint .

Seite:

  wert := 1
  map = 0
  If(FileExist(sourcefolder_mbf . "\" . Bild_map . "*.mbf")
  || FileExist(sourcefolder_mbf . "\" . Bild_map . "*.mxf")){
    gosub, FormStart
  }

 

und

 

If FileExist(sourcefolder_mbf "\" . Bild_map . "_" . (SubStr(A_ThisLabel,0,1)-1) . "*.mbf")

  || FileExist(sourcefolder_mbf "\" . Bild_map . "_" . (SubStr(A_ThisLabel,0,1)-1) . "*.mxf"){
    wert := 1

OK ist kein ELSE dabei aber ich denke das es trotzdem Probleme geben müsste wenn  If(FileExist immer erfüllt wäre .

  

 

 

Weist Du da noch einen Rat ?

Oder ich muss mich mit IfExist abfinden .

 

 

Das habe ich jetzt so getestet .

; If (FileExist ("%sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mxf"))        ; von Manni , Else geht nicht

; If(FileExist (sourcefolder_mbf . imgIndex . "_" . imgIndex2 . "*.mxf")) ; von Lasso ,
IfExist, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mxf                    ; alt Manni , Else geht
      {
        msgbox, 262145 , , MapColor %imgIndex% wenn *.mxf vorhanden ; nur zur Kontrolle
        FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mxf, %savefolder%mapconfig_default_0.mxf, 1
        FileDelete, %savefolder%mapconfig_default_0.mbf
      }
      Else
      {
       msgbox, 262145 , , MapColor %imgIndex% Else für *.mbf ; nur zur Kontrolle
        FileCopy, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mbf, %savefolder%mapconfig_default_0.mbf, 1
      }
     

Gruß Manni



lasso
  • Members
  • 111 posts
  • Last active: May 19 2013 04:19 PM
  • Joined: 02 Nov 2012

wenn ich ehrlich bin hab ich deine frage nicht verstanden
was mir aber auffällt

If (FileExist ("%sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mxf"))        ; von Manni , Else geht nicht

ist total falsch

 

If(FileExist (sourcefolder_mbf . imgIndex . "_" . imgIndex2 . "*.mxf")) ; von Lasso

hinter FileExist sollte kein leerzeichen sein

IfExist, %sourcefolder_mbf%%imgIndex%_%imgIndex2%*.mxf 
If(FileExist(sourcefolder_mbf . imgIndex . "_" . imgIndex2 . "*.mxf"))

sind beide funktional gleich

du solltest dich erstmal mit der Syntax von ahk beschäftigen  icon_wink.gif