Nur dafür fällt mir keine Lösung ein, da der Treibername anscheinend nicht immer an der selben Position in der .inf-Datei steht.
Irgendeine Gemeiamkeit mußt du schon finden, z,B.: "Printername = Modell XY'
Nur dafür fällt mir keine Lösung ein, da der Treibername anscheinend nicht immer an der selben Position in der .inf-Datei steht.
Irgendeine Gemeiamkeit mußt du schon finden, z,B.: "Printername = Modell XY'
Unter Umständen ist dein Code einfach schlecht, und deshalb so langsam.
Vielleicht ist er ja in der Lohnbuchhaltung eines großen Konzerns mit x1000 Mitarbeitern? Dann bezweifle ich aber das die angedachte Lösung merklich schneller wird.
Ich bekomme beim Testen, folgenden Fehler:
+>18:28:49 Starting AutoIt3Wrapper v.18.708.1148.0 SciTE v.4.1.0.0 Keyboard:00000407 OS:WIN_10/ CPU:X64 OS:X64 Environment(Language:0407) CodePage:0 utf8.auto.check:4
+> SciTEDir => C:\Program Files (x86)\AutoIt3\SciTE UserDir => C:\Program Files (x86)\AutoIt3\SciTE\AutoIt3Wrapper SCITE_USERHOME => C:\Users\test\AppData\Local\AutoIt v3\SciTE
>Running AU3Check (3.3.14.5) from:C:\Program Files (x86)\AutoIt3 input:C:\Users\test\AutoIt.MyAu3s\Test\sleepingGUI.au3
"C:\Users\test\AutoIt.MyAu3s\Test\sleepingGUI.au3"(52,55) : error: _WinAPI_SetLayeredWindowAttributes(): undefined function.
_WinAPI_SetLayeredWindowAttributes($GUIChild, 0x605f5f)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
C:\Users\test\AutoIt.MyAu3s\Test\sleepingGUI.au3 - 1 error(s), 0 warning(s)
!>18:28:52 AU3Check ended. Press F4 to jump to next error.rc:2
+>18:28:52 AutoIt3Wrapper Finished.
>Exit code: 2 Time: 9.103
Da dürfte (zumindest im Skriptcode vom Spoiler) ein Include fehlen.
Gar nicht gut finde ich, daß du für ein Standardthema gleich 2 Foren beschäftgen willst.
Und da du Drag-Drop benutzt, kommt es natürlich auf die Menge der Dateien an.
vor FF 57.0 kann man mit der FF.au3.
Funktioniert hier nicht das gleiche Schema, das du in deinem FileCommander angewendet hast?
Ich schlage dir hierfür eine Listview vor. Ein kleines Beispiel (nicht 100% die Lösung, aber ein Wegweiser):
#include <GUIConstantsEx.au3>
#Include <GuiListView.au3>
#include <ListViewConstants.au3>
#include <WindowsConstants.au3>
#region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 357, 366, 192, 124)
$ListView = GUICtrlCreateListView(" |Hi|Moin|xD", 0, 0, 353, 335, _
BitOR($LVS_SHOWSELALWAYS, $LVS_REPORT), BitOR($LVS_EX_FULLROWSELECT, $LVS_EX_CHECKBOXES)) ;$LVS_SHOWSELALWAYS
; wichtig ist der Stil $LVS_Report und der eweiterte Stil $LVS_EX_Checkboxes
$CheckIt = GUICtrlCreateButton("&Check", 120, 340, 113)
For $i = 1 To 99
GUICtrlCreateListViewItem("|" & $i & "| aaaaaaaaaaaaaa|" & $i, $ListView)
Next
GUISetState(@SW_SHOW)
#endregion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $CheckIt
For $i = 0 To _GUICtrlListView_GetItemCount($ListView) - 1
;Schleifenbeginn da das erste Item den Index 0 hat von 0 bis Anzahl -1
If _GUICtrlListView_GetItemChecked($ListView, $i) Then ; wenn geChecked (angehakt) dann
$aItemText = _GUICtrlListView_GetItemTextArray($ListView, $i)
;Inhalt aller Spalten dieser Zeile dem Array $aItemText zuweisen
;$aItemText[0] enthält die Anzahl der Spalten
;$aItemText[1] Checked oder Unchecked (wir haben aber nur geChecked also keine Auswertung erforderlich)
;$aItemText[2] Hi
;$aItemText[3] Moin
;$aItemText{4]xD
ConsoleWrite($aItemText[2] & " " & $aItemText[3] & @CRLF)
; Zeile markieren, die gerade bearbeitet wird
_GUICtrlListView_SetItemSelected($ListView, -1, False, False) ; Alle entfernen (lt. Hilfe, scheint aber zu togglen)
_GUICtrlListView_SetItemSelected($ListView, $i, True, True) ; Nur den einen setzen (lt. Hilfe, scheint aber zu togglen)
; Automatisch an die Stelle hinscrollen
_GUICtrlListView_EnsureVisible($ListView, $i)
Sleep(Random(250,750,1))
EndIf
Next
EndSwitch
WEnd
Alles anzeigen
Da die Bereiche hier nebeneinander liegen, sollte dich zum Ziel führen "Partition löschen" des Bereichs, den du gewinnen möchtest
genau diese Auswahlmöglichkeit habe ich bei dieser Platte nicht. Egal ob ich versuche sie als 1. oder 2. zu löschen. Ich würde danach ein Basis-Volume anlegen und formatieren.
Edit: alles erledigt mit Hilfe von https://www.heise.de/download/produ…on-wizard-78907. Das die Datenträgerverwaltung von Win10 damit Probleme ist zwar traurig, jetzt aber nicht mehr schlimm.
Danke an alle, (auto)Bert
Hallo com, speziell an die etwas Hardware affineren Spezies,
ich habe von einer alten Festplatte meine Daten gesichert und möchte diese jetzt als Sicherungsmedium benutzen. Wenn ich auf annähernd 5 GB verzichte kein Problem. Ich möchte aber den ganzen Platz nutzen können. Hier ein Screenshot:
Das Volume D kann ich löschen, formatieren alles kein Problem. Die OEM-Partition lässt sich (zumindest mit meinem Wissen) nicht mit Hilfe der Datenträgerverwaltung verändern. Nach rechtsklick, steht nur Hilfe zur Auswahl.
Weiß jemand wie es trotzdem geht?
mfg (auto)Bert
Nachtrag: In anderer Hardware an meinem uralt Netbook:
Wie immer steht man erstmal unter Verdacht, der Bösewicht zu sein, der nur illegale Dinge im Kopf hat.
Stimmt, wenn jemand alle (für ihn relevanten=12000) Kundendaten herunterladen will/muß hört sich das sehr suspekt an, er könnte ja demnächst bei der Konkurenz anheuern wollen.
Habe ich einen ausgewählt, kann ich alle Daten, wie z.B. Adresse, Ansprechparter, Gerätetyp und noch ein paar Dinge auf der Seite sehen. Das hilft aber nix, wenn ich mir eine Tour zusammenstellen will, bei der ich möglichst effizient von einem zum nächsten fahren will.
Aus diesem Grunde solltest du mit deinem Vorgesetzten oder IT-Verantwortlichen reden, damit dieses Übel beseitigt wird. Wenn du (und die anderen AD'ler) vor jeder Tour unnötige (im Sinn: es muss doch auch einfacher gehen) Arbeiten erledigen mußt ist dies auf Dauer Kostenintensiver als einmal das System zu erweitern.
In der FF.au3 hat Stilgar die URL-Validierung so gelöst:
; #INTERNAL_USE_ONLY# ==========================================================
; Name ..........: __FFIsURL
; Description ...: URL check
; AutoIt Version : V3.3.0.0
; Syntax ........: __FFIsURL(ByRef $URL)
; Parameter(s): .: $URL - http/https/ftp/about/chrome/file
; Return Value ..: Success - 1
; Failure - 0
; Author(s) .....: Thorsten Willert
; Date ..........: Mon Jun 26 13:47:26 CEST 2017 @532 /Internet-Zeit/
; Link ..........: http://geekswithblogs.net/casualjim/archive/2005/12/01/61722.aspx
; ==============================================================================
Func __FFIsURL(ByRef $URL)
Return (StringRegExp($URL, '^^((ht|f)tp(s?)\:\/\/|~/|/)([\w]+:\w+@)?([a-zA-Z]{1}([\w\-]+\.)+([\w]{2,5}))(:[\d]{1,5})?((/?\w+/)+|/?)(\w+\.[\w]{3,4})?((\?\w+=\w+)?(&\w+=\w+)*)?') Or _
StringRegExp($URL, '^^((ht|f)tp(s?)\:\/\/|~/|/)(\d{1,3}\.){3}\d{1,3}(:[\d]{1,5})?(/.*)?$') Or _
StringLeft($URL, 6) = "about:" Or _
StringLeft($URL, 7) = "chrome:" Or _
StringLeft($URL, 10) = "localhost:" Or _
StringLeft($URL, 8) = "file:///") Or _
StringLeft($URL, 10) = "imacros://" Or _
StringLeft($url, 7) = "http://" ; for intranet
EndFunc ;==>__FFIsURL
Func __FFCheckURL(ByRef $URL)
If Not __FFIsURL($URL) Then
If Not StringRegExp($URL, '^((ht|f)tp(s?)\:\/\/|~/|/)') Then $URL = "http://" & $URL
EndIf
Return __FFIsURL($URL)
EndFunc ;==>__FFCheckURL
Alles anzeigen
aber das funktioniert doch nur, wie auch alle anderen LUA-Scripte von BugFix, mit SciTE4AutoiIt3.
hat dies ISI360 nicht für sein Studio nachgebaut bzw. integriert?
Kennst du Brackets? Das ist ein Editor, der sich auf HTML, CSS, Javascript etc. spezialisiert hat. Wenn man dort ein ", (, [ etc. eingibt, wird automatisch hinter dem Cursor das Schlusszeichen (", ), ]") erstellt. Man kann das einfach ignorieren und das Schlusszeichen selbstständig überschreiben, wenn man aber direkt an eine andere Stelle springt, bleibt es stehen.
Hat nicht BugFix vor Jahren ein LUA-Skript mit ähnlichen Eigenschaften erstellt, dies könntest du einbauen.
Wenn du die generell alle Tastendrücke abfangen willst (ohne sie zu blockieren) kannst du dafür _IsPressed verwenden.
Einfach den Scancode übergeben und du kriegst True oder False zurück je nach dem ob die Taste gedrückt worden ist oder nicht.
Wenn du dazu noch alle Scancodes in ein Array packst und einfach durchiterierst findest du raus welche Tasten auf der Tastatur gedrückt worden sind und welche nicht.
ich hoffe zwar es soll kein Keylogger werden, verweise aber vorsichtshalber auf die Forenregeln.
Was für Dateien kopierst du denn? Es macht einen gewaltigen Unterschied ob du mehrere kleine oder wenige große kopierst.
1 GB große Testdateien allerdings von Karte auf Karte (Kopie von).
Alles anzeigenSoweit ich weiß, sieht Windows keine Standardfunktion dafür vor, man müsste also selber einen PE-Loader basteln... Ansonsten sollte das aber schon halbwegs sicher sein.
Im Beispiel enthalten sind 4 Dateien:
- acl.au3: Enthält die Passwortabfrage und die Entschlüsselungsroutinen.
- script.au3: Das eigentliche Skript, welches geschützt werden soll. Beliebiger Inhalt.
- mkau3.au3: Dieses Skript baut aus den anderen beiden die endgültige Datei.
- myprogram.exe: Beispieldatei zum rumprobieren, kann durch ./mkau3.au3 neu erzeugt werden.
myprogramm.exe wird als malicious (high confidence) eingestuft, natürlich ein False-Positive.
Danke, im kurzen Test mit normalen Windows kopieren erreicht sie zwar nur 5,75 mb/s. Als Karte für mein Nokia 3 (kommt erst noch), hauptsächlich um GPS-Daten zu tracken, reicht es allemal.