Kommandozeile /S=C file1 file2 Datei gesperrt

German support forum

Moderators: sheep, Hacker, Stefan2, white

Post Reply
pba
Junior Member
Junior Member
Posts: 58
Joined: 2011-09-12, 07:35 UTC
Location: Friedberg (Hessen)

Kommandozeile /S=C file1 file2 Datei gesperrt

Post by *pba »

Ich benutze auf Windows 10 und Versionen davor schon lange in meiner "Autostart" einen Aufruf von Total Commander auf die Hauptverzeichnisse gefolgt von dem Aufruf
/S=C file1 file2
Ich verwende TC 9.0a 64bit

Eines der Files ist das SOLL-Ergebnis eines Prüfskripts, das andere File ist das IST-Ergebnis. Wenn das Prüfskript startet, löscht es das IST-Ergebnis und schreibt am Ende eine neue Datei. Skriptsprache ist PERL. Beide Files liegen im SVN, das IST-Ergebnis in einem Verzeichnis, welches bei den Properties auf IGNORE gesetzt ist.

Bisher hat das immer sehr gut geklappt: Das Prüfskript lief ohne Probleme und wenn man ab und zu auf die Instanz von TC mit dem Compare ging, wurde man gefragt, ob man aktualisieren möchte (weil das File geändert wäre) und alles war gut.

Seit heute habe ich den Effekt, dass der Prüfskript beim Öffnen der neuen IST-Datei eine Fehlermeldung ausspuckt.

Die einzige Änderung war, dass ich den ganzen Baum neu "ausgecheckt" habe, weil sich das SVN verheddert hatte.

Ich würde gerne den alten Zustand herstellen. Oder kann man TC abgewöhnen, bei einem Compare die Datei zu sperren?
PBA #53713 (personal)

User avatar
Horst.Epp
Power Member
Power Member
Posts: 3758
Joined: 2003-02-06, 17:36 UTC
Location: Germany

Re: Kommandozeile /S=C file1 file2 Datei gesperrt

Post by *Horst.Epp »

Vor weiteren Anstrengungen würde ich erst mal auf den aktuellen TC 9.51 updaten.
Wenn es dann immer noch nicht geht, kommt vieleicht Hilfe.
Windows 10 Home x64 May 2020 Update, Version 2004 (OS Build 19041.331)
Intel(R) Core(TM) i7-4770 CPU @ 3.40GH, 16GB RAM
TC 9.51 x64 / x86, Everything 1.4.1.984 (x64)

pba
Junior Member
Junior Member
Posts: 58
Joined: 2011-09-12, 07:35 UTC
Location: Friedberg (Hessen)

Re: Kommandozeile /S=C file1 file2 Datei gesperrt

Post by *pba »

Hallo,
das geht leider nicht so einfach (Installation beim Kunden, Aktualisierung immer nur über Systemabteilung). Ich habe ein Update angeregt, aber ob ich es bekomme, steht erfahrungsgemäß in den Sternen.

Grüße
PBA #53713 (personal)

User avatar
Dalai
Power Member
Power Member
Posts: 7101
Joined: 2005-01-28, 22:17 UTC
Location: Meiningen (Südthüringen)

Re: Kommandozeile /S=C file1 file2 Datei gesperrt

Post by *Dalai »

Was mich wirklich mal interessieren würde, ist, warum so viele Leute sagen "da kommt nur eine Fehlermeldung" sagen/schreiben, aber nicht hinzufügen, um welche Fehlermeldung es sich handelt. Insbesondere in den vergangenen Wochen hab ich derartige Sätze wieder häufiger gelesen. Ist das irgendwie (psychologisch) erklärbar? Gerade Fehlermeldungen geben sehr oft wenigstens Hinweise darauf, was das Problem ist, und durch Erfahrung weiß man dann u.U. schon, an welcher Stellschraube man drehen muss.

pba wrote:
2020-06-15, 12:37 UTC
Seit heute habe ich den Effekt, dass der Prüfskript beim Öffnen der neuen IST-Datei eine Fehlermeldung ausspuckt.
Bitte gib doch die Fehlermeldung komplett an.

Grüße
Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64

Plugins: Services2, Startups

User avatar
Horst.Epp
Power Member
Power Member
Posts: 3758
Joined: 2003-02-06, 17:36 UTC
Location: Germany

Re: Kommandozeile /S=C file1 file2 Datei gesperrt

Post by *Horst.Epp »

pba wrote:
2020-06-15, 13:56 UTC
Hallo,
das geht leider nicht so einfach (Installation beim Kunden, Aktualisierung immer nur über Systemabteilung). Ich habe ein Update angeregt, aber ob ich es bekomme, steht erfahrungsgemäß in den Sternen.

Grüße
Da kannst du doch aber mal testweise die aktuelle Portable Version benutzen.
Da muss nichts installiert werden und deine Skripte kannst du doch wohl zum testen auch anpassen.
Windows 10 Home x64 May 2020 Update, Version 2004 (OS Build 19041.331)
Intel(R) Core(TM) i7-4770 CPU @ 3.40GH, 16GB RAM
TC 9.51 x64 / x86, Everything 1.4.1.984 (x64)

User avatar
Dalai
Power Member
Power Member
Posts: 7101
Joined: 2005-01-28, 22:17 UTC
Location: Meiningen (Südthüringen)

Re: Kommandozeile /S=C file1 file2 Datei gesperrt

Post by *Dalai »

Nur für den Fall, dass es um gesperrte Dateien geht, wie der Thementitel und das OP sagt: TC sperrt Dateien größer 2MB (=Summe der Größen beider verglichenen Dateien)
TC-Hilfe, Dialogbox: Vergleich nach Inhalt wrote:Vergleichen

Startet den Vergleich zwischen den beiden ausgewählten Dateien. Falls die beiden Dateien identisch sind, so wird dies lediglich in einer Dialogbox angezeigt, ansonsten werden die Unterschiede in den beiden Textfenstern aufgeführt. Binärdateien werden dabei im Hexadezimalmodus angezeigt, und Textdateien im Textmodus. Dateien bis 2 MB werden komplett in den Speicher geladen, sodass die Originale editierbar bleiben. Größere Dateien werden lediglich in den Speicher 'gemappt', d.h. sie bleiben während des Vergleichs gesperrt.
(Hervorhebung von mir)

Das kann man ändern:
TC-Hilfe, Abschnitt 4.b) wrote:MaxCompareSizeInMem=1048576
Vergleich nach Inhalt: Größenbeschränkung für Dateien, die zum Vergleich vollständig in den Speicher geladen werden. Größere Dateien werden in den Speicher eingeblendet.
Diese Option steht ab TC 9.50 beta 1 zur Verfügung:
HISTORY.TXT wrote:16.10.19 Release Total Commander 9.50 beta 1
[...]
16.07.19 Added: Compare by content: wincmd.ini [Configuration] MaxCompareSizeInMem=1048576 size limit for files which are loaded completely in memory for comparison. Larger files are mapped into memory (file mapping) (32/64)
Grüße
Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64

Plugins: Services2, Startups

pba
Junior Member
Junior Member
Posts: 58
Joined: 2011-09-12, 07:35 UTC
Location: Friedberg (Hessen)

Re: Kommandozeile /S=C file1 file2 Datei gesperrt

Post by *pba »

Fehlermeldungen
....
----------------------------------------------------------------------------------------------------------------------------------------
PlugIn "Suche" liefert schweren Fehler:
Device or resource busy at perl-lib/hilfsmodul.pm line 2364, <FILEHANDLE> line 1447.

Das PlugIn Suche (2.4) meldete einen Fehler/Warnung.
Weiter mit Return...- Abbruch mit [Strg] + [C]
Zusätzlich habe ich das Verhalten mittels des Editors Textpad (Firma Helios), bei dem man das Sperrverhalten einstellen kann, überprüft. Das Verhalten bzw. die Fehlermeldung ist gleich, wenn man dort die Sperrung offener Dateien einschaltet.

Programmcode
Ausschnitt aus hilfsmodul.pm, dies ist Zeile 2361) sub schreiben{
my ($ref, $file, $s) = @_;
open (FILEHANDLE,">$file") or die $!;
print FILEHANDLE $s if (defined $s);
close FILEHANDLE or die $!;
Ich bin kein Perl-Experte (leider nicht, steht immer noch auf meiner To Do-Liste), aber schaut richtig aus (ich benutze das Programm nur).

Portable Version
Dies ist mir leider nicht erlaubt zu verwenden: Alle EXEs etc. von "außen" müssen bei verschiedenen Firmen, Behörden und Institutionen aus dem sicherheitskritischen Bereich müssen vor ihrem Einsatz geprüft werden, bevor sie verwendet werden dürfen.
Last edited by pba on 2020-06-16, 06:32 UTC, edited 1 time in total.
PBA #53713 (personal)

pba
Junior Member
Junior Member
Posts: 58
Joined: 2011-09-12, 07:35 UTC
Location: Friedberg (Hessen)

Re: Kommandozeile /S=C file1 file2 Datei gesperrt

Post by *pba »

@Dalai:
Guter Hinweis: Diese Information hatte ich sogar schon einmal vermutlich in anderem Zusammenhang gesehen. Muss ich mir anschauen, wenn ich wieder vor Ort bin und die Dateien prüfen kann. Vielleicht ist die Ausgabedatei einfach zu groß geworden? Ich melde mich wieder.
PBA #53713 (personal)

pba
Junior Member
Junior Member
Posts: 58
Joined: 2011-09-12, 07:35 UTC
Location: Friedberg (Hessen)

Re: Kommandozeile /S=C file1 file2 Datei gesperrt

Post by *pba »

Bingo, die Datei hat 1.060.298 Bytes.
PBA #53713 (personal)

Post Reply