Register for your free account! | Forgot your password?

Go Back   elitepvpers › Coders Den › AutoIt
You last visited: Today at 02:26

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Programme mit dem selben Namen unterscheiden

Discussion on Programme mit dem selben Namen unterscheiden within the AutoIt forum part of the Coders Den category.

Reply
 
Old   #1
 
Chillex's Avatar
 
elite*gold: 15
Join Date: Apr 2010
Posts: 987
Received Thanks: 2,101
Programme mit dem selben Namen unterscheiden

Hiho an alle ! ,


Hab eine Frage zum unterscheiden von zwei Anwendungen.
Sie haben den selben Namen und dürfen nicht umbenannt werden.
Exe1 ist in Ordner 1.
Exe2 ist in Ordner 2.


Wie sie sich unterscheiden:

So und nun die Frage ;D

Wie unterscheide ich beide Exen mit Autoit?
Also Autoit soll z.B erkennen dass Exe2 geöffnet ist und nicht Exe1.
Kann Autoit 2 Programme am MD5 Hash unterscheiden?


Ich hoffe jemand hat Ahnung davon.
MfG Chillex
Chillex is offline  
Old   #2
 
elite*gold: 0
Join Date: Feb 2009
Posts: 542
Received Thanks: 112


€ sons irgend ein pointer nehmen der bei dem einen prozess einzigartig ist so wie bei dem andern der wert
maxi39 is offline  
Thanks
1 User
Old   #3
 
Chillex's Avatar
 
elite*gold: 15
Join Date: Apr 2010
Posts: 987
Received Thanks: 2,101
Danke für deine Antwort ;D
Es ist so dass beide Prozesse gleich viel an Ram verbrauchen...
Mhh das mit den Pointern geht schon aber erst nachdem man sich eingeloggt hat.
Wie man sieht geht's hier um einen Spiel (T-"Client").
Und die ganzen Werte der Pointer lassen sich erst auslesen wenn man drinn "im" Spiel ist.

Und naja ich wollt es halt so dass schon z.B beim Laden vom Spiel erkannt wird, ob es sich um Exe1 oder Exe2 handelt, damit dann z.B eine MsgBox aufpoppt wenn Exe1 geöffnet ist in der steht "Exe2 muss aber geöffnet werden".
Chillex is offline  
Old   #4

 
elite*gold: 177
Join Date: Apr 2008
Posts: 283
Received Thanks: 143
hmm warum machst du nicht einen launcher der automatisch die richtige exe startet währ doch viel einfacher!
lolerrr is offline  
Thanks
1 User
Old   #5
 
omer36's Avatar
 
elite*gold: 0
Join Date: Mar 2009
Posts: 2,317
Received Thanks: 1,255
hatte ich mal vor einiger zeit aus nem anderen forum gefunden, vllt hilft es ja.. ^^

PHP Code:
;===============================================================================
; Function 
Name:    GetExtProperty($sPath,$iProp)
; 
Description:      Returns an extended property of a given file.
; 
Parameter(s):     $sPath - The path to the file you are attempting to retrieve an extended property from.
;                   
$iProp - The numerical value for the property you want returned. If $iProp is is set
;                              to -1 then all properties will be returned in a 1 dimensional array in their corresponding order.
;                            
The properties are as follows:
;                            
Name = 0
;                            Size = 1
;                            Type = 2
;                            DateModified = 3
;                            DateCreated = 4
;                            DateAccessed = 5
;                            Attributes = 6
;                            Status = 7
;                            Owner = 8
;                            Author = 9
;                            Title = 10
;                            Subject = 11
;                            Category = 12
;                            Pages = 13
;                            Comments = 14
;                            Copyright = 15
;                            Artist = 16
;                            AlbumTitle = 17
;                            Year = 18
;                            TrackNumber = 19
;                            Genre = 20
;                            Duration = 21
;                            BitRate = 22
;                            Protected = 23
;                            CameraModel = 24
;                            DatePictureTaken = 25
;                            Dimensions = 26
;                            Width = 27
;                            Height = 28
;                            Company = 30
;                            Description = 31
;                            FileVersion = 32
;                            ProductName = 33
;                            ProductVersion = 34
; Requirement(s):   File specified in $spath must exist.
; Return 
Value(s):  On Success - The extended file property, or if $iProp = -1 then an array with all properties
;                   On Failure - 0, @Error - 1 (If file does not exist)
; 
Author(s):        Simucal (Simucal@gmail.com)
; 
Note(s):
;
;===============================================================================


#include <array.au3>
$path = FileOpenDialog("Select a file to read attributes",@ScriptDir,"All (*.*)")
$prop = _GetExtProperty($path,-1)
_ArrayDisplay($prop,"Property Array")

Func _GetExtProperty($sPath, $iProp)
    
Local $iExist, $sFile, $sDir, $oShellApp, $oDir, $oFile, $aProperty, $sProperty
    $iExist 
= FileExists($sPath)
    If 
$iExist = 0 Then
        SetError
(1)
        Return 
0
    
Else
        
$sFile = StringTrimLeft($sPath, StringInStr($sPath, "\", 0, -1))
        
$sDir = StringTrimRight($sPath, (StringLen($sPath) - StringInStr($sPath, "\", 0, -1)))
        
$oShellApp = ObjCreate ("shell.application")
        
$oDir = $oShellApp.NameSpace ($sDir)
        
$oFile = $oDir.Parsename ($sFile)
        If 
$iProp = -1 Then
            Local 
$aProperty[35]
            For 
$i = 0 To 34
                
$aProperty[$i] = $oDir.GetDetailsOf ($oFile, $i)
            Next
            Return 
$aProperty
        Else
            
$sProperty = $oDir.GetDetailsOf ($oFile, $iProp)
            If 
$sProperty = "" Then
                Return 0
            Else
                Return 
$sProperty
            EndIf
        EndIf
    EndIf
EndFunc   ;==>_GetExtProperty 
omer36 is offline  
Thanks
1 User
Old   #6
 
Chillex's Avatar
 
elite*gold: 15
Join Date: Apr 2010
Posts: 987
Received Thanks: 2,101
Hmm ja das würde natürlich auch gehen. (@ das mit dem Launcher ;D)
Nur dann ist das Problem bei anderen ist ja der Ordner mit der Exe nicht an der selben Stelle installiert.
Die meisten haben es wohl unter C:\Programme .. nur dann gibt es ja auch noch welche die es z.B auf "D" haben oder ganz wo anders.
Dann müsste das Programm den Nutzer abfragen wo denn der Ordner mit der Exe ist.
Der Nutzer gibt dann aber vielleicht den falschen Pfad an oder den Pfad zur falschen Exe und schon funktioniert der ganze Rest nicht mehr :/

Die Sache ist, das Programm soll dann auf jedem System unterscheiden können ob Exe2 offen ist oder eine andere.
Gibt's denn keinen Weg den HashWert mit Autoit rauszubekommen?
Dann würde das Ganze ja relativ einfach werden:


Quote:
If $Hash = not "928bd67933a0ea061e8bd31dd8cc0134" then
MsgBox("0,"","falsche Exe geöffnet")
EndIf
($Hash muss rausgefunden werden)

€dit
So hab's nun noch selbst gefunden.


Jedenfalls Danke an alle für eure Hilfe ! ;D
Chillex is offline  
Old   #7

 
elite*gold: 177
Join Date: Apr 2008
Posts: 283
Received Thanks: 143
öhm du könntest den ordner aus der Regestry auslesen
lolerrr is offline  
Thanks
1 User
Old   #8
 
elite*gold: 0
Join Date: Sep 2010
Posts: 210
Received Thanks: 45
Quote:
#RequireAdmin
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
$Exe1Pfad=IniRead("Settings.ini","Datenpfad","Exe 1","")
$Exe2Pfad=IniRead("Settings.ini","Datenpfad","Exe 2","")
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Dateinpfad", 346, 105, 192, 124)
$Button1 = GUICtrlCreateButton("Exe 1 Dateinpfad", 240, 8, 99, 25, $WS_GROUP)
$Button2 = GUICtrlCreateButton("Exe 2 Dateinpfad", 240, 40, 99, 25, $WS_GROUP)
$Button3 = GUICtrlCreateButton("Save", 8, 72, 331, 25, $WS_GROUP)
$Input1 = GUICtrlCreateInput($Exe1Pfad, 8, 10, 225, 21)
$Input2 = GUICtrlCreateInput($Exe2Pfad, 8, 42, 225, 21)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
$Pfad1 = FileOpenDialog("TClient",@DesktopDir & "\","Exe (*.exe)")
$Pfad1 = StringReplace($Pfad1,"|",@CRLF)
GUICtrlSetData($Input1,$Pfad1)
Case $Button2
$Pfad2 = FileOpenDialog("TClient",@DesktopDir & "\","Exe (*.exe)")
$Pfad2 = StringReplace($Pfad2,"|",@CRLF)
GUICtrlSetData($Input2,$Pfad2)
Case $Button3
Save()
EndSwitch
WEnd

Func Save()
IniWrite("Settings.ini","Datenpfad","Exe 1",GUICtrlRead($Input1))
IniWrite("Settings.ini","Datenpfad","Exe 2",GUICtrlRead($Input2))
$Exe1Pfad=IniRead("Settings.ini","Datenpfad","Exe 1","")
$Exe2Pfad=IniRead("Settings.ini","Datenpfad","Exe 2","")
EndFunc

Ich würde einfach mal den User es angeben lassen also den Dateinpfad der Exe...
Lighthex is offline  
Thanks
1 User
Old   #9
 
ZeraPain's Avatar
 
elite*gold: 0
Join Date: Jan 2010
Posts: 360
Received Thanks: 249
naja die größe kannst du mit FileGetSize() unterscheiden, die version mit FileGetVersion().
md5 geht jetzt so direkt mit autoit nicht.
ZeraPain is offline  
Thanks
1 User
Old   #10
 
lolkop's Avatar
 
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
natürlich kann man hashes berechnen...

wenn die prozesse allerdings beide bereits gestartet sind, würde ich einfach die größe des main modules einlesen.

dann brauchst du ja nur einen einfachen vergleich machen, welches größer ist, und kannst so die beiden prozesse auseinander halten...
lolkop is offline  
Thanks
1 User
Reply


Similar Threads Similar Threads
Mehr G1 für selben Preis !
11/10/2010 - WarRock Trading - 0 Replies
So ganz einfach ich biete euch einen " Job " an ihr gibt mir z.B. eine PSC 10 € 10 € = ca. 800 Credits und ich biete euch dafür aber 1200 G1 ich sage es gleich : da ich nächste Woche Praktikum von 14 bis 22 uhr habe gehts erst die woche danach ^^ vorbestellungen kan man aber machen
[Programme] Gegner´s Programme
09/11/2010 - Coding Releases - 1 Replies
Hallo Community heute möchte ich mal viele Programme von mir vorstellen ;) 1. Programm Gegner´s Multitool http://www5.pic-upload.de/27.08.10/hc9rvd93u5rr.p ng http://www5.pic-upload.de/27.08.10/2mteveirxd8d.p ng http://www5.pic-upload.de/27.08.10/ab2sq7shrnnj.p ng
Metin2 2mal selben namen?
04/19/2010 - Metin2 - 17 Replies
erstmal hallo ^^ sehe manchmal leute in metin2 die den selben namen haben wie geht das denn?? ^^ danke schonmal für antworten^^
Sry in german: Wie kann ich I und l unterscheiden?
06/22/2009 - Silkroad Online - 2 Replies
Sorry to the english ppl it's german... Hey, wollte fragen ob es villeicht einen weg gibt ingame "I" ( großes "i" ) und "l" ( kleines "L" ) zu unterscheiden? Ich hab mal gelesen man kann irgend eine schrift als datei runterladen und in sro einfügen aber wo finde ich die? ist halt auch ziemlich nervig wenn da mal ein spammbot ist der heist zum beispiel lIlllIIlgh kann man den nicht in block list rein tun...
2 mal mit dem selben account
04/07/2009 - Metin2 - 2 Replies
hi ich war neulich bei einem freund , der meinte voll stolz schau mal... dann hat er sich 2 mal auf dem selben account eingeloggt jedoch mit anderen char´s ich hab natürlich dumm geguckt:confused: geht sowas und wenn ja wie? (sufu schon benutzt nichts rausbekommen genauso wie google)



All times are GMT +2. The time now is 02:28.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.