In der Verknüpfung lautet es starte minimiert meinprogramm.exe. Das ist nicht das Gleiche wie meinprogramm.exe -minimiert.
Wenn es so wäre, würde es ja auch funktionieren.
In der Verknüpfung lautet es starte minimiert meinprogramm.exe. Das ist nicht das Gleiche wie meinprogramm.exe -minimiert.
Wenn es so wäre, würde es ja auch funktionieren.
Ich meinte den Parameter normal in einer Verknüpfung, nicht als Parameter fürs Programm.
Danke erstmal.
Dein erster Versuch startet das Fenster allerdings immer minimiert, selbst bei Parameter normal.
Dein zweiter Vorschlag fiel mir ein wie ich schon auf dem Weg ins Bett war. OK, muss man zwar doch was im Code implementieren aber das hält sich ja in Grenzen.
Klärt trotzdem nicht warum AutoIt-GUIs nicht wie andere GUIs angesteuert werden können.
Hallo,
normalerweise komme ich mit der Hilfe und dem Forum selbst auf die Lösung, aber hier stehe ich auf dem Schlauch. Ich habe festgestellt dass sämtliche von mir erstellten GUIs nicht minimiert gestartet werden können wie andere Programme. Soll heißen: Weder mit einer Verknüpfung (Option minimiert starten) noch auf der Kommandozeile mit start /MIN kriege ich das hin. Selbst bei so einem einfachen Fenster nicht:
#include <GUIConstants.au3>
#include <WindowsConstants.au3>
If $cmdline[0] > 0 Then
If $cmdline[1] = "-neu" Then
Run("C:\Program Files (x86)\AutoIt3\Aut2Exe\Aut2exe_x64.exe /in " & @ScriptName & " /out C:\ProgramData\!Starter\test.exe /comp 4 /x64 /icon D:\Schelle\Programmierung\install\Resourcen\install.ico")
Run("C:\Program Files (x86)\AutoIt3\Aut2Exe\Aut2exe_x64.exe /in " & @ScriptName & " /out " & @ScriptDir & "\install.exe /comp 4 /x64 /icon D:\Schelle\Programmierung\install\Resourcen\install.ico")
Exit
EndIf
EndIf
$Fenster = GUICreate("Test", 200, 200, 200, 200, -1)
GUISetState(@SW_SHOW, $Fenster)
While 1
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
ExitLoop
EndSwitch
WEnd
Alles anzeigen
Um es klar zu stellen: Ich möchte das nicht im Code verwursten.
Wie kriege ich das hin?
Du meinst wohl : https://autoit.de/onlinehilfe/on…g_variables.htm
"Absicht" ist das nicht, es hat sich schlicht und ergreifend noch niemand gefunden, der diese Seite übersetzt.
Falls Du also auf der Suche nach einer Aufgabe bist ...
Ich meinte eigentlich die Offlinehilfe, aber ich denke mal die hängen ja miteinander zusammen.
Und das mit meinen Englischkenntnissen lassen wir mal lieber
Das war auch keine Kritik, mir ist durchaus bewusst wieviel Mühe sich hier einige Leute machen, es war lediglich eine Feststellung.
Oscar : Sowohl die 3.3.10 als auch die Beta, gleiches Ergebnis.
misterspeed: Das Debuggen ergab, dass der Treiber nicht geladen werden kann (@Extended 10 = MCI-Code 266)
Als Ergebnis liegt also bisher folgendes vor:
E:\MehrAls127Zeichen\test.mp3 > funktioniert
E:\Maximal127Zeichen\test.wav > funktioniert
E:\MehrAls127Zeichen\test.wav > funktioniert nicht
Zeichenanzahl jeweils inklusive Dateiname(test.wav/mp3)
Und nu sprach Zeus?
Hallo,
Danke erstmal für die Antworten, aber auch das andere Script funktioniert bei mir nicht.
Die WAV-Datei ist im Übrigen in Ordnung.
Liegt es vielleicht am Betriebssystem? Ich habe Windows 8.1 64bit.
Habe sicherheitshalber auch autoit3.exe und autoit3_x64.exe versucht.
Noch irgendeine Idee?
Hallo,
ich habe ewig gesucht, was ich falsch mache und habe dann herausgefunden, dass ich es mal nicht bin .
#include <Sound.au3>
[/autoit] [autoit][/autoit] [autoit]Opt("MustDeclareVars", 1)
Opt("GUIOnEventMode", 1)
Opt("WinTitleMatchMode", 2)
If $cmdline[1] = "-play" Then
Play()
ElseIf $cmdline[1] = "-neu" Then
Run("C:\Program Files (x86)\AutoIt\Aut2Exe\Aut2exe_x64.exe /in " & @ScriptName & " /out C:\Programme\SpeedCommander\Awf\fuer_sc.exe"); /comp 4 /x64 /icon C:\ProgramData\Icons\buttons\01\restart_black_01.ico")
Exit
EndIf
Func Play()
Local $Sound, $HalbeLaenge
; Sounddatei öffnen
$Sound = _SoundOpen("E:\Audio\Ayreon\Theory Of Everything, The\Disc01\Ayreon! Theory Of Everything, The - 2013 - Hard Rock _21 !Alive!.wav")
;$Sound = _SoundOpen("E:\Audio\Ayreon\Theory Of Everything, The\Disc01\Ayreon! Theory Of Everything, The - 2013 - Hard Rock _02 !Theory Of Everything Part 1, The.wav")
; Mitte der Liedlänge ermitteln, die ", 2" ermittelt in Millisekunden
$HalbeLaenge = ((_SoundLength($Sound, 2)) / 2)
MsgBox(0, "", $Sound[0])
;Run("C:\Programme\MediaPlayerClassic\mpc-hc64.exe " & '"' & $cmdline[2] & '" /start "' & $HalbeLaenge & '" /fixedsize 2143, 154"')
EndFunc
[/autoit]
Öffnet man die Datei in Zeile 18, ist alles in Ordnung.
Nimmt man stattdessen Zeile 19 kommt eine Fehlermeldung.
Grund ist offenbar, dass _SoundOpen mit einem Dateipfad von mehr als 127 Zeichen nicht zurechtkommt.
Kann ich das selbst irgendwie "ausmerzen" und wenn ja wie?
Salve,
also es lag (war ja fast klar) nicht an Windows 8.
Ich habe mich mal ein bißchen mit diesem Objectgedöns beschäftigt und war daher der Meinung, dass das Script aus Post 2 nicht funktionieren kann.
In Zeile 10 wird $oFolder zugewiesen (z.B. D:\)
In Zeile 11 wird $oFile zugewiesen (z.B. D:\beispiel.mp3).
Allerdings nochmal mit dem kompletten Pfad, so das $oFile zu D:\D:\beispiel.mp3 wird.
Jetzt habe ich das mal getrennt und viola, es klappt.
$path = FileOpenDialog("Select a file to read attributes",@ScriptDir,"All (*.*)")
$Ergebnis = FileGetInfo($path, -1)
MsgBox(0, "", $Ergebnis)
Func FileGetInfo($sFile, $iColumn=-1)
If (Not FileExists($sFile)) Then
Return SetError(-1, 0, "")
EndIf
Local Static $aInfoNames[284] = ["Name", "Größe", "Item type", "Date modified", "Date created", "Date accessed", "Attributes", "Offline status", "Offline availability", "Perceived type", "Owner", "Kind", "Date taken", "Contributing artists", "Album", "Year", "Genre", "Conductors", "Tags", "Rating", "Authors", "Title", "Subject", "Categories", "Comments", "Copyright", "#", "Length", "Bit rate", "Protected", "Camera model", "Dimensions", "Camera maker", "Company", "File description", "Program name", "Duration", "Is online", "Is recurring", "Location", "Optional attendee addresses", "Optional attendees", "Organizer address", "Organizer name", "Reminder time", "Required attendee addresses", "Required attendees", "Resources", "Meeting status", "Free/busy status", "Total size", "Account name", "Task status", "Computer", "Anniversary", "Assistant's name", "Assistant's phone", "Birthday", "Business address", "Business city", "Business country/region", "Business P.O. box", "Business postal code", "Business state or province", "Business street", "Business fax", "Business home page", "Business phone", "Callback number", "Car phone", "Children", "Company main phone", "Department", "E-mail address", "E-mail2", "E-mail3", "E-mail list", "E-mail display name", "File as", "First name", "Full name", "Gender", "Given name", "Hobbies", "Home address", "Home city", "Home country/region", "Home P.O. box", "Home postal code", "Home state or province", "Home street", "Home fax", "Home phone", "IM addresses", "Initials", "Job title", "Label", "Last name", "Mailing address", "Middle name", "Cell phone", "Nickname", "Office location", "Other address", "Other city", "Other country/region", "Other P.O. box", "Other postal code", "Other state or province", "Other street", "Pager", "Personal title", "City", "Country/region", "P.O. box", "Postal code", "State or province", "Street", "Primary e-mail", "Primary phone", "Profession", "Spouse/Partner", "Suffix", "TTY/TTD phone", "Telex", "Webpage", "Content status", "Content type", "Date acquired", "Date archived", "Date completed", "Device category", "Connected", "Discovery method", "Friendly name", "Local computer", _
"Manufacturer", "Model", "Paired", "Classification", "Status", "Client ID", "Contributors", "Content created", "Last printed", "Date last saved", "Division", "Document ID", "Pages", "Slides", "Total editing time", "Word count", "Due date", "End date", "File count", "Filename", "File version", "Flag color", "Flag status", "Space free", "Bit depth", "Horizontal resolution", "Width", "Vertical resolution", "Height", "Importance", "Is attachment", "Is deleted", "Encryption status", "Has flag", "Is completed", "Incomplete", "Read status", "Creators", "Date", "Folder name", "Folder path", "Folder", "Participants", "Path", "By location", "Type", "Contact names", "Entry type", "Language", "Date visited", "Description", "Link status", "Link target", "URL", "Media created", "Date released", "Encoded by", "Producers", "Publisher", "Subtitle", "User web URL", "Writers", "Attachments", "Bcc addresses", "Bcc", "Cc addresses", "Cc", "Conversation ID", "Date received", "Date sent", "From addresses", "From", "Has attachments", "Sender address", "Sender name", "Store", "To addresses", "To do title", "To", "Mileage", "Album artist", "Album ID", "Beats-per-minute", "Composers", "Initial key", "Part of a compilation", "Mood", "Part of set", "Period", "Color", "Parental rating", "Parental rating reason", "Space used", "EXIF version", "Event", "Exposure bias", "Exposure program", "Exposure time", "F-stop", "Flash mode", "Focal length", "35mm focal length", "ISO speed", "Lens maker", "Lens model", "Light source", "Max aperture", "Metering mode", "Orientation", "People", "Program mode", "Saturation", "Subject distance", "White balance", "Priority", "Project", "Channel number", "Episode name", "Closed captioning", "Rerun", "SAP", "Broadcast date", "Program description", "Recording time", "Station call sign", "Station name", "Summary", "Snippets", "Auto summary", "Search ranking", "Sensitivity", "Product name", "Product version", "Support link", "Source", "Start date", "Billing information", "Complete", "Task owner", "Total file size", "Legal trademarks", "Video compression", "Directors", "Data rate", "Frame height", "Frame rate", "Frame width", "Total bitrate"]
Local $sDir, $oShell, $oDir, $oFile, $i, $sInfo = "", $sTemp
$sFolder = StringRegExpReplace($sFile, "^(.+?[\\/])[^\\/]+$", "\1")
If ($sFolder = $sFile) Then
Return SetError(1, 0, "")
EndIf
$oShell = ObjCreate("Shell.Application")
If @error Then
Return SetError(2, 0, "")
EndIf
$oFolder = $oShell.NameSpace($sFolder)
$oFile = $oFolder.ParseName(StringTrimLeft ($sFile, StringInStr($sFile, "", 0, -1)))
If ($iColumn > -1) And ($iColumn < 284) Then
$sTemp = $oFolder.GetDetailsOf($oFile, $iColumn)
If (StringLen($sTemp) = 0) Then
Return SetError(3, 0, "")
EndIf
Return $aInfoNames[$iColumn] & ": " & $sTemp
EndIf
For $i = 0 To 283
$sTemp = $oFolder.GetDetailsOf($oFile, $i)
If (Stringlen($sTemp) > 0) Then
$sInfo &= $aInfoNames[$i] & ": " & $sTemp & @CRLF
EndIf
Next
Return StringTrimRight($sInfo, 2)
EndFunc
Danke an James für die Hilfe
P.S: Wie kann man denn die Einrückungen im Qulltext aus dem Editor hierher übertragen?
Hallo,
es sollte schon für alle Dateitypen funktionieren. Deshalb habe ich mich ja vor Begeisterung fast nass gemacht, wie ich gesehen habe, was dein Script alles (theoretisch ) liefert.
Vielleicht ist ja wirklich noch jemand da, der sich opfert und bestätigt das das unter Windows 8.1 anderes ist oder mir sagt was ich falsch gemacht habe.
Hallo,
danke, aber auch hier keine Änderung, egal ob mp3 oder exe und die Dateigröße müßte ja nun immer da sein.
Ich habe mittlerweile auch kein anderes Windows mehr zur Verfügung um das gegen zu testen.
Hallo,
sorry, kann mich erst jetzt melden.
Irgendwie stelle ich mich zu dämlich an. Wenn ich deine Funktion so aufrufe
$Ergebnis = FileGetInfo("D:\topbankingstart.exe", 1)
MsgBox(0, "", $Ergebnis)
dann kriege ich als Ergebnis Size:Größe. Bei -1 dann eben eine riesengroße Messagebox.
Das ist etwa so ähnlich wie bei dem anderen Skript, wenn ich die angesprochene Zeile mal entferne. Dann kriege ich eine Array mit den ganzen Bezeichnungen aber ohne Ergebnis.
Hallo,
ich habe hier (unter #3) ein Script gefunden, mit dem man (angeblich) Metadaten einer Datei auslesen kann (z.B. Titel oder Länge einer mp3-Datei).
Wenn ich mal davon absehe, dass die Zeile 64 ziemlich sinnlos erscheint (es wird nach nichts gesucht, das wird von der Pfadlänge abgezogen und um diese Zahl wird der Pfad von rechts gekürzt, d.h. $sDir ist immer nichts), konnte man das ja noch anpassen indem anstelle von $sDir einen festen Pfad vorgibt, habe ich trotzdem kein Ergebnis.
Nun habe ich entweder hier oder im autoitscript-fprum gelesen, dass das vom Betriebssystem abhängen könnte.
Meins ist Windows 8.1 64bit.
Kann mir das jemand bestätigen oder sagen wo der Fehler liegt?
Merci vielmals
Hallo,
danke an alle, das Script von misterspeed funktioniert.
Der Schreibfehler war es nicht, das hatte ich hier nur falsch gepostet.
Hallo,
danke, aber das klappt auch nicht.
Nur um es noch mal klarzustellen: Ich möchte nicht auf der Kommandozeile arbeiten, sondern in AutoIt. Ich brauche halt nur diesen Wert.
Momentan löse ich es so, das ich den Wert in eine Datei schreibe und diesen auslese, aber ich finde das ist nicht das Non-Plus-Ultra.
Hallo,
bisher hat mir die Hilfe und / oder die Forumergebnisse immer geholfen, aber aus irgendeinem Grund überfordert das meine Fähigkeiten.
Ich habe folgende Kommandozeile
"C:\Program Files\RevoUninstaller\RevoCmd.exe" /m keepass*
Als Ergebnis kommt heraus
KeePass Password Safe 2.24
Dieses Ergebnis möchte ich an eine Variable übergeben. Ich habe mir die Hilfe zu Run, StdoutRead etc. und auch die Beiträge im Forum zu den Schlagworten angesehen, aber ich bin vermutlich zu alt dafür.
Ich wäre also dankbar für die Vervollständigung von
Run("C:\Program Files\RevoUninstaller\RevoCmd.exe" /m keepass* ... Parameter)
und
$Ergebis = ...
KeePass ist hier nur das Beispiel
Auf jeden Fall erstmal einen guten Rutsch
Hallo,
weitere Versuche liefen bisher ergebnislos.
Sinn und Zweck dieser Aktion war folgender: Ich teile mein Desktop mit hsi.exe in zwei Teile, damit die maximierten Fenster die Gadgest am rechten Rand nicht überlappen sollen. Auch dass die Gadgets im Vordergund sein können war keine Option. Ist diese Teilung erfolgt und die Gadgest werden gestartet, erscheinen sie eben nicht am rechten Bildschirmrand, sondern am rechten Rand vom "größeren" Desktopabschnitt.
Ich habe das jetzt mit einem Workaround gelöst, indem ich die Gadgets zunächst auf die linke Seite des Desktops geschoben habe und dann die settings.ini kopiert habe. Beim nächsten Systemstart starte ich das autoitscript das die originäre settings.ini durch die kopierte ersetzt (dann weiß ich ja an welcher Position das Gadget steht), starte die Sidebar und schiebe dann die Gadgets an die gewünschte Stelle. Das Ganze sieht dann halt so aus:
FileCopy ( "D:\schelle\settings.ini", "C:\Users\schelle\AppData\Local\Microsoft\Windows Sidebar", 1)
sleep (1000)
Run ("C:\Program Files (x86)\Windows Sidebar\sidebar.exe /autoRun")
sleep (5000)
MouseMove(280, 79)
MouseClick("left", 309, 79, 1)
Send ("{SHIFTDOWN}", 0)
MouseDown("left")
MouseMove(1909, 76, 50)
MouseUp("left")
Send ("{SHIFTUP}", 0)
Der zweite Abschnitt für alle Gadgets dementsprechend.
Ich hoffe, das hilft vielleicht jemandem, der das gleiche Problem hatte und bedanke mich für die Unterstützung und setzte das Ganze auf "Gelöst"