Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Probleme bei drag und drop und Programmaufruf

Mitglied: Kongootto

Kongootto (Level 1) - Jetzt verbinden

08.03.2011 um 16:25 Uhr, 4003 Aufrufe, 7 Kommentare

Hallo Admins,

ich habe ein kleine Problem mit einem Batch Skript:

ich zeihe per drop und drag eine .csv Datei auf ein Batch Skript, welches dann wiederum ein Java Programm mit der .csv Datei und weiteren Datei (zusammengesetzt aus der ersten .csv Datei) als Parameter startet. Hier der Quellcode

01.
@echo off & setlocal 
02.
 
03.
set var0=%1 
04.
set var1=%var0:~7,24% 
05.
set var2=VAK0300%var1% 
06.
 
07.
 
08.
javaw.exe -jar vaksh.jar i% %var2% 
09.
pause
Am Anfang wird der zweite Parameter (var2) aus der übergebenen .csv Datei konstruiert; danach wird das Java Programm mit beiden Parametern gestartet. Wenn ich nun in der Eingabeaufforderung der Skript mit test.bat VAK0200_201102151566.csv startet funktioniert auch alles.

Wenn ich allerdings im Explorer die .csv Datei VAK0200_201102151566.csv auf die test.bat "ziehe" passiert nichts. Ich habe mir schon mit echo %CD% den aktuellen Pfad angeben lassen. Dort steht dann C:\Dokumente und Einstellungen\Benutzername. Das Skript liegt allerdings unter D:\Test. Ich habe leider keine Ahnung wie ich das Skript dazu kriegen kann, dass es bei "drag&drop" die .bat Datei mit den Parametern unter D:\Test startet.

Ich hoffe jemand von euch hat eine Idee.

Gruß & Danke
Kongootto
Mitglied: bastla
08.03.2011 um 17:32 Uhr
Hallo Kongootto und willkommen im Forum!
Ich habe leider keine Ahnung wie ich das Skript dazu kriegen kann, dass es bei "drag&drop" die .bat Datei mit den Parametern unter D:\Test startet.
Eigentlich würde ich ja den jeweiligen Elementen den benötigten Pfad voranstellen und sie damit vom Startort des Batches unabhängig machen, aber um Deine konkrete Frage zu beantworten:
01.
@echo off & setlocal 
02.
pushd D:\Test 
03.
 
04.
set var0=%1 
05.
set var1=%var0:~7,24% 
06.
set var2=VAK0300%var1% 
07.
 
08.
 
09.
javaw.exe -jar vaksh.jar i% %var2% 
10.
popd 
11.
pause
BTW: Eigentlich sollte auch
javaw.exe -jar vaksh.jar i% VAK0300%var0:~7%
ganz ohne %var1% und %var2% genügen (wobei ich mich allerdings noch frage, was es mit "i%" auf sich hat) ...
Noch eine Überlegung: Um aus "VAK0200_201102151566.csv" nur den Teil "_201102151566.csv" mit "VAK0300" zu kombinieren, wäre mE
for /f "tokens=1* delims=_") %%i in ("%~1") do set "var2=VAK0300_%%i"
durch die Unterteiilung am ersten vorkommenden "_" der sicherere Weg ...

Grüße
bastla
Bitte warten ..
Mitglied: 76109
08.03.2011 um 17:53 Uhr
Hallo Kongootto!

Anzumerken wäre aber noch, dass bei Drag&Drop der komplette Pfad der *.csv-Datei übergeben wird.

Von daher wäre bastlas letzte Variante zu empfehlen.

Gruß Dieter
Bitte warten ..
Mitglied: bastla
08.03.2011 um 18:01 Uhr
Hallo Dieter!

Natürlich ließe sich bei der "Übernahme" in die Variable %var0% auch die Reduktion auf den Dateinamen einfach durchführen:
set "var0=%~nx1"
- allerdings beruht das Thema "Zerlegung" ja bisher nur auf einer Mutmaßung meinerseits ...

Grüße
bastla
Bitte warten ..
Mitglied: 76109
08.03.2011 um 18:15 Uhr
Hallo bastla!

Zitat von bastla:
Natürlich ließe sich bei der "Übernahme" in die Variable %var0% auch die Reduktion auf den Dateinamen
einfach durchführen:
set "var0=%~nx1"
Auch ne Möglichkeit
- allerdings beruht das Thema "Zerlegung" ja bisher nur auf einer Mutmaßung meinerseits ...
Da habe ich wohl gleich gemutmaßt

Gruß Dieter
Bitte warten ..
Mitglied: Kongootto
09.03.2011 um 16:16 Uhr
Hallo,

vielen Dank für die Hilfe; jetzt klappt es!
Falls es wen interessiert; so funktionert es.

<echo>
@echo off & setlocal

set var1=%~nx1
set var_tmp=%var1:~7,24%
set var2=VAK0300%var_tmp%

cd /D %~dp0

javaw.exe -jar vaksh.jar %var1% %var2% test
pause
</echo>

Das mit der Schleife hat leider nicht geklappt, aber evtl habe ich da auch einen Fehler gemacht.

Viele Grüße
Kongootto
Bitte warten ..
Mitglied: bastla
09.03.2011 um 16:24 Uhr
Hallo Kongootto!

Wenn Du in "<echo>" ersatzweise das Codewort "code" verwendest, wird die Darstellung etwas angenehmer ...
Zur Sicherheit (für den Fall, dass die Batchdatei einmal in einem Ordner, dessen Pfad mindestens ein Leerzeichen enthält, zu liegen kommt) solltest Du
cd /D "%~dp0"
verwenden.
Das mit der Schleife hat leider nicht geklappt, aber evtl habe ich da auch einen Fehler gemacht.
Das kannst Du leicht nachvollziehen, indem Du das "echo off" vorübergehend in ein "echo on" änderst - so werden alle Befehle vorweg angezeigt ...

Grüße
bastla
Bitte warten ..
Mitglied: Kongootto
14.03.2011 um 12:04 Uhr
Hallo nochmal,

habe das cd /D "%~dp0" jetzt umgesetzt.

Vielen Dank nochmal.

Gruß
Kongootto
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Drag and Drop in Powershell
gelöst Frage von mc-doubleyouBatch & Shell2 Kommentare

Hallo zusammen, inwischen habe ich mich von cmd zur Powershell vorgearbeitet, die Lösungen die mir Google aber so liefert ...

Windows Server
Server Spinnt, Drag drop
gelöst Frage von dax4funWindows Server5 Kommentare

Tag Freunde, Windows 2008 r2 : Seit einiger Zeit Schalten sich einige Sachen wie Drag & Drop, Copy Paste ...

Visual Studio

GridView mit Drag-n-Drop oder vergleichbares

gelöst Frage von Aicher1998Visual Studio7 Kommentare

Guten Abend, nachdem ich bereits seit 4 Tagen an einem UserControl in C# getüftelt hab, aber nichts brauchbares geschafft ...

Outlook & Mail

Outlook 2013 Drag and Drop geht nicht

Frage von Mungo-SOutlook & Mail1 Kommentar

Hallo zusammen PC Notebook Surface mit Win 10 und Office 2013, Domäne-PC, Exchange-Konto Problem: Drag and Drop geht nicht, ...

Neue Wissensbeiträge
iOS
IOS 11.2.6 verfügbar
Information von sabines vor 4 StundeniOS

Mit dem Update soll der Bug behoben werden, bei dem eine bestimmte Zeichenkette IOS zum Absturz gebracht hat.

Sicherheit
Sicherheitsrisiko: Die Krux mit 7-Zip
Information von kgborn vor 19 StundenSicherheit2 Kommentare

Bei vielen Anwendern ist das Tool 7-Zip zum Entpacken von Archivdateien im Einsatz. Die Software ist kostenlos und steht ...

Internet

Datendealing im WWW Tracking Methoden immer brutaler

Information von sabines vor 1 TagInternet

Interessanter Artikel zum Thema Tracking im WWW und die immer "besseren" Methoden des Trackings. Professor Arvind Narayanan (Princeton-Universität) betreibt ...

Erkennung und -Abwehr

Ups: Einfaches Nullzeichen hebelte den Anti-Malware-Schutzt in Windows 10 aus

Information von kgborn vor 1 TagErkennung und -Abwehr

Windows 10 ist das sicherste Windows aller Zeiten, wie Microsoft betont. Insidern ist aber klar, das es da Lücken, ...

Heiß diskutierte Inhalte
Server
Route-Befehl Unterstützung (unter CMD)
gelöst Frage von FKRR56Server38 Kommentare

Guten Tag , i.M. habe ich Probleme über den CMD-Route-Befehl ein Routing auf einen entfernten Server zuzulassen. Der Server ...

LAN, WAN, Wireless
VPN Cisco ASA5505 PaloAlto PA-200
gelöst Frage von YannoschLAN, WAN, Wireless19 Kommentare

Hallo zusammen, ich würde gerne ein Site-to-Site VPN zwischen den beiden Standorten aufbauen. PaloAlto PA200 Internetanschluss Deutsche Telekom GK ...

Microsoft
TV-Tipp: Das Microsoft-Dilemma
Information von kgbornMicrosoft17 Kommentare

Aktuell gibt es in Behörden und in Firmen eine fatale Abhängigkeit von Microsoft und dessen Produkten. Planlos agieren die ...

Server-Hardware
Server für Exchange 2016, Kaufberatung
Frage von MazenauerServer-Hardware15 Kommentare

Guten Tag werte Gemeinde, Vorab: Ich dachte es gab mal einen separaten Bereich für solche Anfragen, habe ich leider ...