Edit Comment
IT-Stuff, Tutorials, Software, Internet, Unterhaltung Willkommen auf IMA

Archive for the ‘IT’ Category

.vbs und .wsf Fehler

Folgende Fehler haben mich jetzt echt lange aufgehalten:

.vbs per Doppelklick:
Skriptmodul “VBScript” für Skript “C:\test.vbs” wurde nicht gefunden.
Can’t find script engine “VBScript” for script “C:\test.vbs”.
vbs script skriptmodul vbscript wurde nicht gefunden Fehler beim Ausführen von .vbs und .wsf Skripten   Skriptmodul VBScript nicht gefunden

.vbs per CMD:
CScript-Fehler: Skriptmodul “VBScript” für Skript “C:\test.vbs” wurde nicht gefunden.

.wsf:
Immer ein Fehler in Zeile 0.
wsf script skriptmodul vbscript wurde nicht gefunden Fehler beim Ausführen von .vbs und .wsf Skripten   Skriptmodul VBScript nicht gefunden


6 Lösungsmöglichkeiten!

1)
Die einfachste Lösung, die auf so ziemlich jeder Internetseite steht, ist ein Set aus 3 CMD Befehlen:
regsvr32.exe VBScript, regsvr32.exe jscript.dll und/oder regsvr32.exe jscript.dll. Darauf folgt jeweils ein Popup, die Komponente sei erfolgreich registriert werden o.Ä.

2)
Schaut in eurem Windows\system32\ Ordner nach der vbscript.dll. Merkt euch Dateigröße; die exakte Größe in Bytes(!) findet ihr in den Eigenschaften der Datei. Schaut auf einem Vergleichssystem (selbes OS, funktionierendes VBScript) nach dieser Datei und vergleicht Größe und Daten. Wenn sie auffällig unterschiedlich sind ersetzt ihr die Datei auf dem fehlerhaften System mit der Datei auf dem fehlerfreien System (selber OS!). Wiederholt Schritt 1).
Downloadet euch alternativ Windows Script 5.7, entpackt die .exe und nutzt die darin enthaltenen .dll Dateien. Allerdings ist der Download nur für Windows XP Systeme, keine Garantie, dass das funktioniert!

3)
Von diesen 6 hier präsentierten Lösungsmöglichkeiten hat nur dieser hier bei mir funktioniert, also, lesen!
In der Registry wurde dieser Schlüssel
HKEY_CLASSES_ROOT\CLSID\{B54F3741-5B07-11cf-A4B0-00AA004A55E8}\InprocServer32
von einem Antivirensystem modifiziert.

Dem (Standard) Key wurde folgender Wert zugewiesen:
C:\\Program Files\\Common Files\\McAfee\\SystemCore\\ScriptSn.20110513152421.dll
und keine Änderungen waren ohne Weiteres erlaubt. Deswegen konnte regsvr32 diesen Key nicht updaten.

Also Rechtsklick auf InprocServer32 -> Berechtigungen und dem aktuellem Nutzer oder Jeder Vollzugriff geben. Den Wert auf
@=”C:\\Windows\\system32\\vbscript.dll”
setzen und die Berechtigungen wieder normalisieren.

Fertig! Ein Hoch auf die einzigen 2 Webseiten im Netz auf denen ich diesen Lösungsansatz gefunden habe: 1 und 2 !

4)
In den Internet Optionen kann man im Scripting Bereich noch die 2 Einstellungen von Active Scripting and Java Applets überprüfen, sollten beide Enabled sein.

5)
Mir fiel noch ein Tool aus meinem vorletzten Windows 7 Seminar ein: sfc.exe! Das System File Checker Programm scannt alle wichtigen Systemdateien nach Änderungen und kann korrupte Dateien auf den Standard wiederherstellen. Dafür nutzt es die Windows Resource Protection, die Änderungen an Systemdateien mit speziellen DACLs und ACLs erkennt.
Also: sfc.exe /scannow und abwarten. Möglicherweise werden keine “Integritätsverletzungen” festgestellt, möglicherweise wurden welche festgestellt und konnten behoben werden, vielleicht wurden auch welche festgestellt und konnten nicht behoben werden.
Dann hilft der Befehl findstr /c:"[SR]" %windir%\logs\cbs\cbs.log >sfcdetails.txt um alle nicht reparierbaren Fälle in eine neue .txt Datei zu filtern.
vbs wsf script skriptmodul nicht gefunden sfc scannow 460x242 Fehler beim Ausführen von .vbs und .wsf Skripten   Skriptmodul VBScript nicht gefunden
Mehr zu sfc

6)
Windows XP User können testweise Windows Script neu installieren. “Windows Script 5.7″ für Windows XP gibt es hier als Download. Windows Vista/7 Nutzer brauchen es gar nicht erst zu probieren, die Installation lässt sich auch mit Kompatibilitätseinstellungen nicht durchführen.
Aber die .exe kann man mit fähigen Programmen entpacken. Enthalten sind viele wichtige .dll und .exe Dateien, die nützlich sein könnten.

Ich hoffe einer dieser Tipps hat für euch funktioniert und eure .vbs und .wsf Scripte funktionieren wieder. Bei mir hat Punk 3) zumindest für beide Scripttypen die Lösung gebracht.


Ich bin vielleicht nicht der einzige und letzte Admin, der GIMP im Netzwerk silent, mit Logs via Batch installieren möchte. Also halte ich das hier kurz fest.

Ziel:

GIMP 2.6.11 soll in einer Domäne via Batch Startscript installiert werden, ohne dass der Nutzer etwas davon mitbekommt und diese Installation beeinflussen (z.B. verhindern) kann. Dabei sollen Logs erstellt werden. Für jeden ausführenden Computer wird eine Logdatei erstellt und falls auf einem Computer die Installation fehlschlägt wird zusätzlich eine ausführliche Logdatei der GIMP Installation zur Verfügung stehen.
Zusätzlich wird die Verteilung mit Hilfe von Clientfiltern gesteuert (natürlich optional).

Zuerst die coolste Info: gimp-installer.exe /?
Die GIMP Entwickler haben eine Dokumentation zu Parametern, Fehlercodes und anderen Optionen in den Installer gepackt. Daraus lässt sich eine zuverlässige Installation basteln.

Die installer.bat:

@echo off
cls
title GIMP Installer
set wd=\\huiqb38c.user.hu-berlin.de\IQBInstitut\System\Sonstiges\GIMP
set chkd=\\huiqb38c.user.hu-berlin.de\IQBInstitut\System\Sonstiges\GIMP\checkdirs\%computername%
set log=\\huiqb38c.user.hu-berlin.de\IQBInstitut\System\Sonstiges\GIMP\logs\%computername%.txt
:: predef vars
set done=0
set gimpel=9999
set /a run=0

if exist %chkd% set done=1 & goto end

REM Clientfilter: nur die Computer aus der allowedPCs.txt dürfen installieren
for /f %%f in (%wd%\allowedPCs.txt) do if "%computername%"=="%%f" goto install
goto end

REM Clientfilter: die Computer aus der deniedPCs.txt dürfen nicht installieren
::for /f %%f in (%wd%\deniedPCs.txt) do if "%computername%"=="%%f" goto end

:install
set /a run=%run%+1
if "%run%"=="2" echo %date% %time% - Zweiter Versuch >> %log%
echo %date% %time% - Installation startet >> %log%
%wd%\gimp2611.exe /verysilent /norestart /nocancel /suppressmsgboxes /restartexitcode=3010 /log="%log%.log" /mergetasks="!desktopicon"
set gimpel=%errorlevel%

if "%gimpel%"=="0" md %chkd% & del /f /q %log%.log & echo %date% %time% - Installation erfolgreich abgeschlossen >> %log%
:: if "%gimpel%"=="3010" md %chkd% & del /f /q %log%.log & shutdown -r -f -t 120 -c "Um die GIMP Installation erfolgreich abzuschliessen muss der Computer neugestartet werden. Der Computer wird in 120 Sekunden neugestartet!"
if "%gimpel%"=="3010" md %chkd% & del /f /q %log%.log & echo %date% %time% - Installation abgeschlossen, 3010 - Restart eigentlich notwendig. >> %log%
if "%run%"=="2" echo %date% %time% # 2. Installationsversuch ebenfalls fehlgeschlagen, Fehlercode %gimpel% >> %log% & goto end
if "%gimpel%"=="1" echo %date% %time% # EL 1 - Initialisierung fehlgeschlagen, warte 600 Sekunden... >>%log% & ping 127.0.0.1 -n 600 >>nul & goto install
if "%gimpel%"=="2" echo %date% %time% # EL 2 - Abbruch durch den User, warte 600 Sekunden... >>%log% & ping 127.0.0.1 -n 600 >>nul & goto install
if "%gimpel%"=="4" echo %date% %time% # EL 4 - Install Error, warte 600 Sekunden... >>%log% & ping 127.0.0.1 -n 600 >>nul & goto install
if "%gimpel%"=="5" echo %date% %time% # EL 5 - Install Error, warte 600 Sekunden... >>%log% & ping 127.0.0.1 -n 600 >>nul & goto install
if "%gimpel%"=="9999" echo %date% %time% # hier ist etwas schief gelaufen... >> %log%

:end
if "%done%"=="1" echo %date% %time% - Bereits installiert >> %log%

Anpassungen:

In Zeile 4-6 natürlich die Serverpfade anpassen.
Der Clientfilter (siehe Zeile 14 bis 19) ist natürlich optional. Aktiviert Zeile 15 und 16 oder Zeile 19 für den gewünschten Effekt.
Je nach Clientfilter ist noch eine allowedPCs.txt oder eine deniedPCs.txt nötig. In dieser steht pro Zeile 1 Computername.
Die Parameter des Installers in Zeile 25 können selbstverständlich den eigenen Bedürfnissen angepasst werden. Siehe dazu die installer.exe /? Dokumentation (siehe oben).
Zeile 29 und 30 behandeln den Fall, wenn der Installer nach der Installation neustarten möchte. Zeile 29 startet den Rechner dann nach 2 Minuten automatisch neu und zeigt vorher eine Meldung an. Zeile 30 ignoriert das Verhalten und trägt es nur vollständigkeitshalber in die Logdatei ein.

Logs und Checkdirs:

Der Installer legt im Ordner \logs\ für jeden ausführenden Computer 1 Logdatei ab. Diese enthält bei einer erfolgreichen Installation beispielsweise folgenden Inhalt:
01.08.2011 18:14:01,26 – Installation startet
01.08.2011 18:15:26,59 – Installation erfolgreich abgeschlossen

Schlägt die Installation fehl wird in diesem Ordner eine zusätzliche Datei [computername].txt.log zur Verfügung stehen, in der ausführliche Debug Informationen des Installers gelistet sind. Zusätzlich steht in der [computername].txt eine Kurzbeschreibung des Fehlers.

Anhand des Checkdirs erkennt das Script, ob es bereits ausgeführt wurde. Dieses leere Verzeichnis wird nur bei den Fehlercodes 0 (erfolgreich) und 3010 (erfolgreich mit Neustart) erstellt.

Sowohl für die Logs als auch für die Checkdirs muss das ausführende Objekt Schreibzugriff auf diesen Serverordner haben. Beim Startscript das Computerobjekt, beim manuellen Ausführen das Benutzerobjekt.

gimp automatisierte silent netzwerk installation automatisierte silent Netzwerk Installation von GIMP mit Batch Startscript


Der meistbesuchteste Beitrag meines Blog ist praktisch seit Anbeginn des Posts: “Windows XP inkl. SATA Treiber erstellen – XP ISO Builder
Auch jetzt noch erreicht er fast täglich die meisten Besucherzahlen.

Auch ich habe am Wochenende mit meinem Beitrag gearbeitet. Auf meinem Tisch stand ein Thinkpad T60. Dieser sollte mit Windows XP bespielt werden und damit es – wie so oft im Leben – nicht zu einfach wird kam bei der Windows Installation natürlich dieser Output:
windows xp cd mit sata treibern t60 kl 460x212 angepasstes Windows XP mit SATA Treibern für Thinkpad T60
Es konnten keine installierten Festplattenlaufwerke gefunden werden.
Stellen Sie sicher, dass alle Festplattenlaufwerke eingeschaltet und richtig mit dem Computer verbunden sind
[...]”

Na gut, dann wollen wir mal.

Diesen Thinkpad T60 neugestartet, Windows XP CD in eingelegt, Winfuture XP ISO Builder heruntergeladen, Windows CD eingelesen (wird lokal kopiert) und die einzelnen Schritte durchgegangen.

Wichtig wird es jetzt bei den Controllertreibern, die bei der Windows XP Installation die Festplatten erkennen sollen. Benötigt wird eine txtsetup.oem, die irgendwelche Treiber enthält.
Okay, auf der Thinkpad Support Seite des Thinkpad T60 Models gibt es im “Hard Drive” Bereich einen “Intel Matrix Storage Manager”. Dieser wird bestimmt alle Festplattentreiber beinhalten.
Heruntergeladen, entpackt, tatsächlich eine txtsetup.oem enthalten. Zusätzlich dazu habe ich noch den Festplattentyp des T60 herausgefunden und auf der Herstellerseite noch ein 2. Paket geladen und ebenfalls hinzugefügt.
Resultat:
windows xp cd mit sata treibern t60 iso builder controller treiber 460x332 angepasstes Windows XP mit SATA Treibern für Thinkpad T60
Treiber rein, Winfuture Update Pack rein, Windows Einstellungen gemacht, das ganze HickHack halt. ISO erstellt, gebrannt und rein in den T60.

Reboot und:
windows xp cd mit sata treibern t60 fertig 460x275 angepasstes Windows XP mit SATA Treibern für Thinkpad T60

Eine Windows XP mit Treibern, Einstellungen und Updates. Mal wieder erweist sich der XP ISO Builder als ein Wundertool!


Ziel: Aus einem Batch Script E-Mails verschicken können ohne vorher Programme installieren oder konfigurieren zu müssen.
Extra: 1-Zeiler

Lösung:
Aus dem Script einen PHP Webmailer fernsteuern. Wenn die Ansprüche nicht zu hoch sind ist diese Lösung in 2, 3 Minuten einsatzbereit und absolut ausreichend.
Einzige Voraussetzung ist hierbei natürlich ein PHP fähiger Webserver. Auf den (Windows) Clients sind keine weiteren Anforderungen gegeben.

Voraussetzung: PHP fähiger Webserver für den Mailer und eine Internetverbindung am Client

Scriptbeispiel:

start "iexplore" "http://php.webserver.de/webmailer.php?submitcode4f3d2s1a&contactname=Testserver 110&subject=Backup fehlgeschlagen&email=edv@iqb.hu-berlin.de&message=Das NAS Backup ist fehlgeschlagen&mailto=hannes.schurig@online.de"

PHP Mailer Code:

Code anzeigenDen Code könnt ihr bequem mit den Links/Rechts Pfeiltasten horizontal bewegen.

<?php
<?php
$emailSent = "error";
 
if(isset($_GET['submitcode4f3d2s1a'])) {
 
    if(trim($_GET['contactname']) == '') { 
		$hasError = true; }
    else { 
		$name = trim($_GET['contactname']); }
 
    if(trim($_GET['subject']) == '') { 
		$hasError = true; }
    else {
        $realsubject = trim($_GET['subject']);
        $subject = 'PHP Mailer: "'.$realsubject.'"'; }
 
    if(trim($_GET['email']) == '')  { 
		$hasError = true; }
    else if (!eregi("^[A-Z0-9._%-]+@[A-Z0-9._%-]+\.[A-Z]{2,4}$", trim($_GET['email']))) { 
		$hasError = true; }
    else { 
		$email = trim($_GET['email']); }
 
    if(trim($_GET['message']) == '') { 
		$hasError = true; }
    else {
        if(function_exists('stripslashes')) { 
			$comments = stripslashes(trim($_GET['message'])); }
        else { 
			$comments = trim($_GET['message']); } 
		}
 
    if(!isset($hasError)) {
        $emailTo = $_GET['mailto'];
        $datum = date("d.m.Y",$timestamp);
        $uhrzeit = date("H:i",$timestamp);
        $body = "\n###############\nPHP Mailer\n###############\n\nVersendet am $datum um $uhrzeit Uhr\nAn: $emailTo \nVon: $name \nEmail: $email \nBetreff: $realsubject \n\nText:\n$comments";
        $headers = 'From: PHP Mailer <'.$emailTo.'>' . "\r\n" . 'Reply-To: ' . $email;
 
        mail($emailTo, $subject, $body, $headers);
        $emailSent = "success";
    }
}
echo $emailSent;
?>

Erläuterung:
Das Batch Script startet den Internet Explorer (bzw. den als Standard eingestellten Browser) mit einer URL als Parameter, die dann also aufgerufen wird.
Da der Prozess iexplore angesprochen wird sollte es ein Windows PC mit installiertem Internet Explorer sein. Computer ohne IE oder mit anderem OS müssen den Pfad zu einem Browser einsetzen, der URLs per Parameter annimmt und aufruft.

Die URL ruft das PHP Script auf, das ihr vorher auf einen Webserver geparkt habt.
Mein erster Parameter ist so etwas wie ein Passwort. Damit nicht jeder im Web diesen Webmailer einfach so gebrauchen kann wird im PHP Code ganz am Anfang mit
if(isset($_GET['submitcode4f3d2s1a'])) { überprüft, ob ein bestimmter Parameter gesetzt ist, den am besten nur ihr wisst und auch anpassen solltet. Ohne diesen Key funktioniert der Webmailer nicht, gibt ihn also nur bedingt weiter.
Alle weiteren Parameter sind beliebig anpassbar, müssen natürlich den GET Abfragen der PHP entsprechen.

Diese Variante ist also recht flexibel. Ihr könnt den Mailer beliebig anpassen, abspecken, aufrüsten usw.

Beispielnutzung: automatisierte Server Backup Batch Lösung


Google Correlate Drawn Series…

So heißt eine Komponente der neuen Google Anwendung “Google Correlate“.
Google Correlate kann die Aktivität von Suchanfragen grafisch darstellen. So kann man die Häufigkeit und Popularität einer Suchanfrage seit 2004 mit anderen Suchanfragen vergleichen oder kann Suchanfragen mit ähnlicher Aktivität von Google finden lassen.
Intelligente Menschen können aus diesen Zusammenhängen sicher eine Menge machen, für mich ist es erstmal nur grundlegend interessant icon biggrin Google Correlate Drawn Series...
google correlation vergleich 460x395 Google Correlate Drawn Series...

Aber noch besser: “Search by Drawing”
Ihr braucht Suchbegriffe, Events oder andere Dinge mit einer ganz bestimmten zeitlichen Aktivität? Ein Suchbegriff, der Anfang 2005 aktiv war, dann erst Mitte 2009 wieder aufkam und nach 2010 nie wieder gesehen wurde? Google findet es icon smile Google Correlate Drawn Series...
Malt selber eine Aktivitätskurve und Google ermittelt Suchbegriffe, die diese Kurve hatten, so gut es geht.
google correlation drawing series test 460x415 Google Correlate Drawn Series...

via


Zufälliger Post des Tages

Translator

Categories

Admin

Sie möchten hier werben oder Sponsor auf längere Zeit werden? Ich garantiere Ihnen unschlagbare Preise bei meinen Besucherzahlen. Egal ob Banner, Textlinks oder andere Werbeformen. Informieren Sie sich bei mir unter werbung@hannes-schurig.de