stefan1994
Goto Top

Installations verzeichnis eines Programmes finden

Hi

Ich hab mir heute im laufe des eine Batch datei gebastelt, wer hätte das gedacht. :D
Die Batch datei kopiert ein paar Dateien.
Die Batch datei ist mehr ein Installations Programm.

Nur mein Problem ist jetzt das jeder sein Programm woanders installiert hat. Gibt es irgend eine Variable in der das Installationsverzeichnis gespeichert ist?
Ich denke dabei an etwas wie "%applicationdir%\Programmname"


Ich hoffe ihr versteht was ich meine und könnt mir weiterhelfen. :D


P.S. Ich brauch das Installations verzeichnis, %appdata% hilft mir nicht...


MfG. Stefan

Content-Key: 123095

Url: https://administrator.de/contentid/123095

Printed on: April 16, 2024 at 23:04 o'clock

Member: rzlbrnft
rzlbrnft Aug 20, 2009 at 02:49:15 (UTC)
Goto Top
Das geht so nicht, wenn du nicht sicher sein kannst das die Installation auch im Standard Programmverzeichnis liegt.
Dazu brauchst du schon eine Batch Datei die in der Registry das Installationsverzeichnis des Programms ausliest.
Natürlich nur wenn das Programm bei der Installation auch einen Pfad in der Registry anlegt.
Per Batch geht das evtl. mit Zusatztools, einfacher wäre aber ein VBScript zu benutzen.
Member: stefan1994
stefan1994 Aug 20, 2009 at 04:30:40 (UTC)
Goto Top
Zusatztolls ist schlecht da es ja verschiedenen Clienten bekommen und dann jeder diese Zusatztools installieren müsste...
VBS kann ich leider nicht.
Also hat villeicht noch jemand eine Idee?


MfG
Member: Logan000
Logan000 Aug 20, 2009 at 06:12:08 (UTC)
Goto Top
Moin Moin

Also hat villeicht noch jemand eine Idee?
Warum? Die Idee war doch erstmal nicht schlecht.

Schau mal in der Regitry unter:
HKLM/Software/Microsoft/Windows/CurrentVersion/Uninstall nach. Da solten alle installierten Programme mit einem Schlüssel vertreten sein.
In diesem findest Du auch DistplayName und InstallLocation.

Wenn Dein Programm sich dort verewigt hat kannst du doch den Pfad per Batch auslesen und verwenden.

Gruß L.
Member: rubberman
rubberman Aug 20, 2009 at 20:59:01 (UTC)
Goto Top
Hallo stefan1994,

suche nach einer spezifischen Datei, die nur bei diesem Programm vorkommt (zB. die *.exe)
@echo off &setlocal

set Datei=Programm.exe
::        ^^^^^^^^^^^^^^^^^^^-hier die zu suchende Datei eintragen

set Laufwerke=C D
::            ^^^^^^^^^^^^^^^^^^^-hier die möglichen Laufwerke eintragen (Leerzeichen-getrennt!)

for %%i in (%Laufwerke%) do (
 for /f "tokens=3" %%j in ('dir %%i:\ 2^>nul^|findstr "%%i:\\"') do (  
  for %%k in (%%j) do (
   if defined FullName goto weiter else (
    call :Sub %%k
    for /f "tokens=*" %%l in ('dir /a: r a /b /s \ ^| findstr /e /i "%Datei%"') do set "FullName=%%l"  
    popd
   )
  )
 )
)
:weiter
if not defined FullName (
 echo  %Datei% konnte nicht gefunden werden!
 echo.
 echo  Folgende Laufwerke konnten durchsucht werden:
 if defined dLW (
  echo  %LW%
 ) else (
  echo   keine
 )
 echo  von Vorgabe:
 echo   %Laufwerke%
 echo.
 pause
 goto :eof
)
echo %FullName%
echo.
pause
goto :eof

:Sub
pushd %1 2>nul
if not errorlevel 1 set "LW=%LW% %1"  
goto :eof

Grüße
rubberman
Member: stefan1994
stefan1994 Aug 20, 2009 at 22:29:46 (UTC)
Goto Top
Hi

Dank an Logan.

Das Programm hat sogar einen Schlüssel unter HKLM/Software :D

Danke

MfG. Stefan
Member: Logan000
Logan000 Aug 21, 2009 at 06:56:18 (UTC)
Goto Top
Moin

Sei doch bitte so gut und setze den Beitrag auf erledigt.

Gruß L
Member: stbewo
stbewo Aug 21, 2009 at 11:12:26 (UTC)
Goto Top
Hi Stefan,

Du kannst auch damit etwas spielen ( ab XP SP2)

WMIC product get name, version, InstallLocation

Gruß
Stefan