Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

VBScript über CScript starten führt zu Fehlermeldung

Empfohlene Antworten

Veröffentlicht

Hallo,

ich hab ein VBScript geschriebne, dass etliche Minuten (ca. 15) läuft.

Um zu sehen, dass das Script noch läuft würde ich gerne einen Status auf die Konsole schreiben.

Googlen hat geholfen: Ich würde das Script jetzt mittels

cscript [script.vbs]
starten. Leider erscheint dann folgende Meldung:
Microsoft (R) Windows Script Host, Version 5.6

Copyright (C) Microsoft Corporation 1996-2001. Alle Rechte vorbehalten.


S:\sonstige_software.vbs(2

1, 1) Microsoft OLE DB Provider for ODBC Drivers: [Microsoft][ODBC Microsoft Acc

ess Driver]Allgemeiner Fehler Registrierungsschlüssel 'Temporary (volatile) Jet

DSN for process 0x85c Thread 0xf64 DBC 0x2c60f94 Jet' kann nicht geöffnet werden

.
Die betreffende Zeile dürfte hier irgendwo sein:
myname = WScript.ScriptFullName

mypath = Left(myname, InstrRev(myname, "\"))


set db = CreateObject("ADODB.Connection")

db.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ="& mypath & source)


set FileSystemObject = CreateObject("Scripting.FileSystemObject")

set textstream = FileSystemObject.OpenTextFile(product_file,1,true)
Jemand eine Ahnung woran das liegt, starte ich das ganze normal mit
wscript

funktionierts, nur hab ich dann halt keine Ausgabe...

Microsoft OLE DB Provider for ODBC Drivers: [Microsoft][ODBC Microsoft Acc

ess Driver]Allgemeiner Fehler Registrierungsschlüssel 'Temporary (volatile) Jet

DSN for process 0x85c Thread 0xf64 DBC 0x2c60f94 Jet' kann nicht geöffnet werden

kann der benutzer, unter dem das script ausgeführt wird, auf die ODBC-einstellungen zugreifen (genauer, auf HKEY_LOCAL_MACHINE\SOFTWARE\ODBC)? allenfalls bitte mal mit WshShell.RegRead testen.

Die betreffende Zeile dürfte hier irgendwo sein

die genaue zeile ist diese:

db.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ="& mypath & source)

starte ich das ganze normal mit wscript funktionierts

du bist sicher, dass dann in die datenbank geschrieben wird?

versuche auch hier RegRead sowohl mit cscript als auch wscript zu testen.

nur hab ich dann halt keine Ausgabe...

wscript lässt sich mit msgbox gesprächiger machen.

s'Amstel

Ich hab jetzt die Lösung, aber ich verstehs nicht:

Wenn ich direkt eine Konsole aufmache und

cscript script.vbs

ausführe kommt der Fehler.

Schreib ein CMD-File mit der obigen Befehlszeile drin, dann klappts ?!?!

Wo is da der Unterschied ??

wscript lässt sich mit msgbox gesprächiger machen

ja, aber dann muss ich ja immer "OK" drücken, nicht schön für n automatisches Script, das immer um 23 Uhr läuft :)

Hab da noch ne Ergänzungsfrage:

gibts was wie "Konsoleninhalt löschen" oder mit Cursor an eine "bestimmte Position springen" ?

Wenn ich direkt eine Konsole aufmache und cscript script.vbs ausführe kommt der Fehler. Schreib ein CMD-File mit der obigen Befehlszeile drin, dann klappts ?!?!

ich hab dein script jetzt mal getestet, indem ich eine .mdb angelegt habe, und darauf zugegriffen habe. bei mir klappt das, sowohl wenn ich das script per cscript, als auch aus einer .cmd ausführe. ich bekomme halt erst in späterer folge einen (anderen) fehler, weil ich ausser dem db.open sonst nix mache - prinzipiell sollte das bei dir aber auch klappen.

ja, aber dann muss ich ja immer "OK" drücken, nicht schön für n automatisches Script, das immer um 23 Uhr läuft :)

msgbox (wscript anstelle von cscript) ist auch eher für debugging-aufgaben ausgelegt, denn als ausgabe in automatisch ablaufenden consolenscripten (administrationsscripten).

gibts was wie "Konsoleninhalt löschen" oder mit Cursor an eine "bestimmte Position springen" ?

naja, so etwas in der art :D

dim bla, loop1, loop2

for loop1 = 1 to 25

  for loop2 = 1 to 80

    astr = astr & " "

  next

next

wscript.echo bla
oder du rufst in deiner .cmd folgendes auf
cls & <deinscript>.vbs

das macht nix anderes als ein normales cls und führt dann dein deinscript aus.

s'Amstel

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.