c.override
Goto Top

Brauche ein Skript das entweder ein 32 oder 64 bit Programm ausführt.

Hi

ich bräuchte wie schon erwähnt ein Skript das folgendes tut (Vielleciht VB oder Batch):

1. Computername herausfinden
2. 32 oder 64 Bit version herausfinden
3. wenn 32 Bit dann folgendes PRogramm mit den dazugehörigen Parametern ausführt: C:/Temp/Test1.exe /s "C:/Computername.txt" (Paramter und Computername sehr wichtig)
4. Bei 64 Bit genau das selbe nur andere Datei
5. Programm soll im hintergrund ablaufen.


Es wäre super wenn mir hier jemand helfen könnte. Ich möchte auch selbst Programmiersprachen aneignen und das wäre ne super hilfe.

Nochmal danke an alle die Helfen können.

Gruß

C.Override

Content-ID: 152357

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

Ausgedruckt am: 26.11.2024 um 03:11 Uhr

Dani
Dani 05.10.2010 um 10:38:50 Uhr
Goto Top
Hi,
eine Batchdatei würde sich anbieten. Ein kl. Beispiel:

@echo off

rem Computername ausgeben
echo %computername

rem Überprüft ob es ein 32 oder 64Bit OS ist
if not "%ProgramFiles(x86)%"=="" echo 64bit else echo 32bit  
Ist unter Windows 7 zu 50% getestet... face-smile

Wann soll dieses Programm starten?! Zu einer bestimmten Uhrzeit / täglich, wöchentlich, monatlich oder beim Systemstart und einmalig?! Was darf es ein... face-wink


Grüße,
Dani
Miyamoto
Miyamoto 05.10.2010 um 10:56:08 Uhr
Goto Top
Hi,
was du auch machen kannst ist folgendes:
@echo off 

REM Computername ausgeben 
echo Computername: %computername%

REM Überprüft ob es ein 32Bit oder 64Bit Architektur ist 
if "%PROCESSOR_ARCHITECTURE%"=="x86" (   
	echo Architektur : 32bit
) else (
	echo Architektur : 64bit
)
getestet unter Windows XP

Gruß Miyamoto
bastla
bastla 05.10.2010, aktualisiert am 18.10.2012 um 18:43:42 Uhr
Goto Top
@Miyamoto

... wobei eigentlich noch die im Beitrag Windows 7 64bit cmd abfragen im ersten verlinkten Artikel beschriebene Einschränkung zu berücksichtigen wäre ...

Grüße
bastla
muftypeter
muftypeter 05.10.2010 um 11:42:25 Uhr
Goto Top
Hallo,
maybe hilft ja so was:
dim Wsh1Shell , Wsh2Shell 

Set Wsh1Shell = WScript.CreateObject("WScript.Shell")  
Set Wsh2Shell = WScript.CreateObject("WScript.Shell")  

Set WshSysEnv = Wsh1Shell.Environment("SYSTEM")  

bitbatch32 = "B:\tool\scripts\bat1.bat"  
bitbatch64 = "B:\tool\scripts\bat2.bat"  

If WshSysEnv("PROCESSOR_ARCHITECTURE") = "AMD64" then  
'## 64 Bit System  


		Wsh2Shell.run bitbatch64

else 


'## 32 Bit System  

		
		Wsh2Shell.run bitbatch32


end if
einfach mit wscript script.vbs starten
76109
76109 05.10.2010 um 11:43:03 Uhr
Goto Top
Hallo C.Override!

In VBS könnte es in etwa so funktionieren:
Const Prog32 = "Test1.Exe"  
Const Prog64 = "Test2.Exe"  

Const CmdText = """C:/Temp/%1"" /s ""C:/%2.txt"""  

Dim objWMIService, colItems, objItem, CN, OS, PG, CmdLine
    
Set objWMIService = GetObject("winmgmts:\\.\root\CIMV2")  
Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_OperatingSystem")  
    
For Each objItem In colItems
    CN = objItem.CSName:  OS = objItem.OSArchitecture
Next
    
If InStr(OS, "32") > 0 Then  
    PG = Prog32
ElseIf InStr(OS, "64") > 0 Then  
    PG = Prog64
Else
    MsgBox "OS-Architektur unbekannt", vbExclamation, "Fehler":  WScript.Quit  
End If
    
CmdLine = Replace(CmdText, "%1", PG)  
CmdLine = Replace(CmdLine, "%2", CN)  
    
MsgBox CmdLine
 
'With CreateObject("WScript.Shell")     
    '.Run CmdLine, 1, False  '1=Fenster, 0=Hintergrund  
'End With  

Wobei aktuell zum testen nur eine Meldung mit der Kommandozeile ausgegeben wird.

Wenn's funktioniert, dann Codezeile 26 löschen und in den letzten 3 Codezeilen am Zeilen-Anfang die Kommentarzeichen (Hochkommas) entfernen.

Gruß Dieter
C.Override
C.Override 05.10.2010 um 16:19:53 Uhr
Goto Top
Vielen Dank für die Hilfe.

Ich bin echt total begeistert. über die große Anzahl der Hilfe.

Ich werde es morgen gleich mal testen und werde euch auf jeden Fall bescheid geben.
C.Override
C.Override 27.10.2010 um 12:46:21 Uhr
Goto Top
funktioniert leider nicht. Kommen tausend fehlermeldungen
muftypeter
muftypeter 28.10.2010 um 14:02:38 Uhr
Goto Top
Hallo,
welches funktioniert denn nicht? Da es hier einige Vorschäge gab, würde mich das interesieren face-smile

Um welches OS geht es denn eigendlich?

Grüße vom Peter