Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

CMD .exe zu .lnk und umbennen?

Frage Entwicklung Batch & Shell

Mitglied: heavymetaller

heavymetaller (Level 1) - Jetzt verbinden

21.06.2008, aktualisiert 22.06.2008, 4370 Aufrufe, 4 Kommentare

Hi

Frage an die Experten:

Ich suche eine Möglichkeit, evtl. via CMD (muss aber nicht), um aus einer Kundendatenbank verknüpfungen automatisch zu erstellen.

es bestehen 10.000 Ordner in den jeweils die selbe anwendung kopiert wurde
Die Ordner sind mit "00001" bis "10000" benannt. in den ordnern befindet sich je eine "start.exe"

Diese start.exe soll in einen Ordner namens "KndNr" verknüpft werden und den selben Namen wie der Ordner erhalten aus der die exe verlinkt wurde.

also:

Pfad: *\00001\start.exe -> *\KndNr\00001.lnk
Pfad: *\00002\start.exe -> *\KndNr\00002.lnk
Pfad: *\00003\start.exe -> *\KndNr\00003.lnk
.
.
Pfad: *\10000\start.exe -> *\KndNr\10000.lnk


Vielen Dank im Vorraus

eurer heavy


[Edit Biber] Verschoben von "Windows" nach "Batch & Shell".
Und ja, ich habe es gesehen - wieder ein "umbennen"-Beitrag.
Und nein, ich werde nichts dazu schreiben. Lässt mich kalt. Lach ich drüber. Pfff. [Edit]
Mitglied: bastla
21.06.2008 um 16:03 Uhr
Hallo heavymetaller und willkommen im Forum!

Auch wenn das Erstellen der Links keine große Sache ist (was Dir die Suchfunktion hier im Forum dazu liefert, sollte schon genügen): Wäre es nicht vielleicht einfacher / sinnvoller, etwa einen Batch der Art
01.
@echo off & setlocal 
02.
set /p "KNr=Kundennummer? " 
03.
if not defined KNr goto :eof 
04.
if not exist "*\%KNr%\start.exe" goto :eof 
05.
cd /d "*\%KNr%" 
06.
start.exe
zu verwenden (oder, bei Bedarf, wegen der etwas ansprechenderen Oberfläche auch ein kleines VBScript)?

Vielleicht holst Du mit Deiner Beschreibung etwas weiter aus und erklärst auch kurz, wozu die selbe .exe-Datei in jedem Ordner liegen muss ...

Grüße
bastla
Bitte warten ..
Mitglied: heavymetaller
21.06.2008 um 16:11 Uhr
ich habe die benutzerdaten mit den wichtigen daten einzelner kunden in einer kleinen anwendung gespeichert, das system möchte ich auch beibehalten, da mir das so vorgeschrieben wird vom chef.
Ich kann praktisch an der kundennummer einfach die das programm öffnen in der ich alle wichtigen (und vertraulichen) daten wiederfinde, die daten tragen die kunden mannuell ein.

um die exen ´n automatisch zu starten und mit einer excel-tabelle zu verknüpfen brauche ich die als lnk. der übersichthaber mit kundennummer als name.

bloß 10000 datein manuell umbennen... XD du weist... nich möglich
Bitte warten ..
Mitglied: bastla
21.06.2008 um 16:51 Uhr
Hallo heavymetaller!

Letzten Endes ist es ohnehin Deine Entscheidung ...

Versuch es mit folgendem Batch:
01.
@echo off & setlocal 
02.
set "Zielpfad=*\KndNr" 
03.
set "Basis=*" 
04.
 
05.
if not exist "%Zielpfad%" md "%Zielpfad%" 
06.
 
07.
set M=%temp%\MakeShortCut.vbs 
08.
echo Set args=WScript.Arguments>%M% 
09.
echo Set objShell=WScript.CreateObject("WScript.Shell")>>%M% 
10.
echo Set objShortcut=objShell.CreateShortcut(args(0))>>%M% 
11.
echo objShortcut.TargetPath=args(1)>>%M% 
12.
echo objShortcut.WorkingDirectory=args(2)>>%M% 
13.
echo objShortcut.Save>>%M% 
14.
 
15.
for /d %%i in ("%Basis%\*.*") do cscript //nologo %M% "%Zielpfad%\%%~nxi.lnk" "%Basis%\%%~nxi\Start.exe" "%Basis%\%%~ni"
Zum Testen wird es sinnvoll sein, etwa 3 Kundenordner in einen anderen Pfad zu kopieren und diesen Pfad in den Zeilen 2 und 3 anstelle des "*" einzutragen.

Falls "KndNr" parallel zu den "00001"- bis "10000"-Ordnern (und daher auch in %Basis%) angelegt wird, erstellt der Batch (da alle Unterordner von %Basis% behandelt werden) auch einen Link zur (nicht existierenden) "Start.exe" dieses Ordners; entweder löschst Du diese Verknüpfung manuell oder du kannst ein Suchmuster (etwa "%Basis%\0*.*", damit nur mit "0" beginnende Ordner erfasst werden) in der Zeile 15 vorgeben.

Grüße
bastla

[Edit] Basis-Pfad auf "*" (analog zur Beschreibung im Eröffnungsposting) geändert. [/Edit]
Bitte warten ..
Mitglied: heavymetaller
22.06.2008 um 12:19 Uhr
hab im netz dazu noch das hier gefunden:

matchlink.exe

machlink -q:"start.exe KndNr\00001.lnk" -z:"%ALLUSERSPROFILE%\Desktop\1.lnk"
machlink -q:"start.exe KndNr\00002.lnk" -z:"%ALLUSERSPROFILE%\Desktop\2.lnk"
machlink -q:"start.exe KndNr\00003.lnk" -z:"%ALLUSERSPROFILE%\Desktop\3.lnk"

habe aber das problem, dass er zwar ganz toll alle links erstellt, aber bei "ausführen in:" der Ordner nicht drin steht..

werde deinen code aber auch jetzt mal testen
Bitte warten ..
Neuester Wissensbeitrag
Microsoft

Lizenzwiederverkauf und seine Tücken

(5)

Erfahrungsbericht von DerWoWusste zum Thema Microsoft ...

Ähnliche Inhalte
Heiß diskutierte Inhalte
LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (18)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Windows Netzwerk
Windows 10 RDP geht nicht (16)

Frage von Fiasko zum Thema Windows Netzwerk ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...