Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > AutoIt
You last visited: Today at 03:13

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

Advertisement



Tratsch rund um Autoit / Autoit Talk | kleinere Fragen

Discussion on Tratsch rund um Autoit / Autoit Talk | kleinere Fragen within the AutoIt forum part of the Coders Den category.

Reply
 
Old 05/12/2012, 17:19   #46


 
Lawliet's Avatar
 
elite*gold: 2
Join Date: Jul 2009
Posts: 14,456
Received Thanks: 4,685
Ich parse gerade an etwas rumm, dabei hab ich ein Problem mit meinem $Files Array.

$Data =
Code:
00000000EC0000005D0000001C273F49000000005346540000000000555650414E0000000000009C010000610000001C273F490000000053465400000000005556574152424C4500000000000049010000530000001C273F490000000053465400000000005556524F54415445000000000000050300007B0000001C273F490000000053465400000000005753504F53585A50414E000000000000FD010000370000001C273F490000000053465400000000005753454E565245464C454354464C4F4F5200000000000034020000D10000001C273F490000000053465400000000005753504F53524F5441544541524F554E445900
Code:
While True
		$i += 1
		ReDim $Files[$i][3]
		$posi = StringInStr($data, "1C273F49", 0, 1, $posi + 8)
		If $posi Then
			$Files[$i - 1][1] = Dec(ConvertRezBack(StringMid($data, $posi - 16, 8)))
			$Files[$i - 1][2] = Dec(ConvertRezBack(StringMid($data, $posi - 8, 8)))
			For $c = 2 To 8 Step 2
				_ArrayDisplay($Files)
				$Files[$i - 1][0] &=  BinaryToString("0x" & (StringMid($data, $posi + 22 - $c, 2)))
			Next
		Else
			ExitLoop
		EndIf
		ConsoleWrite($posi & @CRLF)
	WEnd
Die For Schleife:
Code:
For $c = 2 To 8 Step 2
				_ArrayDisplay($Files)
				$Files[$i - 1][0] &=  BinaryToString("0x" & (StringMid($data, $posi + 22 - $c, 2)))
			Next
löscht mir meine alten Ergebnisse, die ich weiter oben über
Code:
$Files[$i - 1][1] = Dec(ConvertRezBack(StringMid($data, $posi - 16, 8)))
			$Files[$i - 1][2] = Dec(ConvertRezBack(StringMid($data, $posi - 8, 8)))
ermittelt habe.
Wo ist das Problem?^^
Lawliet is offline  
Old 05/12/2012, 17:20   #47
 
elite*gold: 0
Join Date: Mar 2009
Posts: 7,260
Received Thanks: 33,149
@Der-Eddy:
Wie liest du den Quellcode den aus?

Code:
<script type="text/javascript"> vbmenu_register("postmenu_XXX", true); </script>
findet sich nur im Quelltext, wenn du eingeloggt bist. Bei einem einfachen InetRead() Befehl wäre es ja so, als ob du die Seite als Gast besuchst. Gäste verfügen nicht über dieses Menü, sondern werden bei einem Klick auf den Namen direkt auf das Profil weitergeleitet.
Würde jetzt einfach mal vermuten, dass es deine Fehlerquelle ist.

Zeilenumbrüche kannst du je nach Quelle mit @CR, @LF oder @CRLF finden.
Code:
#include <Array.au3>

$Source = BinaryToString(InetRead("http://www.elitepvpers.com/forum/autoit/1868201-tratsch-rund-um-autoit-kleinere-fragen-5.html#post16651583", 1))
If Not @error Then
	$bla = StringRegExp($Source, 	'<meta property="fb:app_id" content="(.*?)" />' & @CRLF & _
									'<meta property="og:site_name" content="(.*?)" />', 1)

	If IsArray($bla) Then _ArrayDisplay($bla)
EndIf
@CR → \r
@LF → \n
@CRLF → \r\n

Die Escape-Zeichen kannst du verwenden, wenn du die Funktion StringFormat() verwendest:
Code:
#include <Array.au3>

$Source = BinaryToString(InetRead("http://www.elitepvpers.com/forum/autoit/1868201-tratsch-rund-um-autoit-kleinere-fragen-5.html#post16651583", 1))
If Not @error Then
	$bla = StringRegExp($Source, StringFormat('<meta property="fb:app_id" content="(.*?)" />\r\n<meta property="og:site_name" content="(.*?)" />'), 1)
	
	If IsArray($bla) Then _ArrayDisplay($bla)
EndIf
KDeluxe is offline  
Thanks
1 User
Old 05/12/2012, 18:09   #48
 
Der-Eddy's Avatar
 
elite*gold: 400
Join Date: Nov 2008
Posts: 67,905
Received Thanks: 19,505
Quote:
Originally Posted by KDeluxe View Post
@Der-Eddy:
Wie liest du den Quellcode den aus?

Code:
<script type="text/javascript"> vbmenu_register("postmenu_XXX", true); </script>
findet sich nur im Quelltext, wenn du eingeloggt bist. Bei einem einfachen InetRead() Befehl wäre es ja so, als ob du die Seite als Gast besuchst. Gäste verfügen nicht über dieses Menü, sondern werden bei einem Klick auf den Namen direkt auf das Profil weitergeleitet.
Würde jetzt einfach mal vermuten, dass es deine Fehlerquelle ist.

Zeilenumbrüche kannst du je nach Quelle mit @CR, @LF oder @CRLF finden.
Code:
#include <Array.au3>

$Source = BinaryToString(InetRead("http://www.elitepvpers.com/forum/autoit/1868201-tratsch-rund-um-autoit-kleinere-fragen-5.html#post16651583", 1))
If Not @error Then
	$bla = StringRegExp($Source, 	'<meta property="fb:app_id" content="(.*?)" />' & @CRLF & _
									'<meta property="og:site_name" content="(.*?)" />', 1)

	If IsArray($bla) Then _ArrayDisplay($bla)
EndIf
@CR → \r
@LF → \n
@CRLF → \r\n

Die Escape-Zeichen kannst du verwenden, wenn du die Funktion StringFormat() verwendest:
Code:
#include <Array.au3>

$Source = BinaryToString(InetRead("http://www.elitepvpers.com/forum/autoit/1868201-tratsch-rund-um-autoit-kleinere-fragen-5.html#post16651583", 1))
If Not @error Then
	$bla = StringRegExp($Source, StringFormat('<meta property="fb:app_id" content="(.*?)" />\r\n<meta property="og:site_name" content="(.*?)" />'), 1)
	
	If IsArray($bla) Then _ArrayDisplay($bla)
EndIf
Ich logge mich über TCP ein und lese dann den Quelltext aus
Mit '<span style="color:(.*?)">(.*?)</span><!-- google_ad_section_end --></a>' finde ja schon was blos nicht genau das was ich suche
Der-Eddy is offline  
Old 05/12/2012, 18:24   #49
 
mo.tennis's Avatar
 
elite*gold: 0
Join Date: Feb 2010
Posts: 178
Received Thanks: 4
ehhm hab noch ne frage...gibt es ne möglichkeit, dass sich der script von selbst in einen anderen ordner kopirt..kann nur ne kopie sei....muss nich der script selbst sein


mfg mo
mo.tennis is offline  
Old 05/12/2012, 18:55   #50
 
Achat's Avatar
 
elite*gold: 528
Join Date: Jan 2012
Posts: 2,127
Received Thanks: 2,403
Code:
FileMove(@ScriptFullPath,@TempDir,1)
Achat is offline  
Thanks
1 User
Old 05/12/2012, 21:49   #51
 
mo.tennis's Avatar
 
elite*gold: 0
Join Date: Feb 2010
Posts: 178
Received Thanks: 4
so nächste frage

ehhm wenn ich einen porcess mit ProcessClose beenden will geb ich ja die pid an also :
ProcessClose ("zb. 3405")

was ist wenn sich die pid des programms nach jedem start ändert??
wie kann ich die nach jedem start neu raussuchen lassen?

.................
und Achat...danke hat mir sehr geholfen :d
mo.tennis is offline  
Old 05/12/2012, 21:58   #52
 
elite*gold: 0
Join Date: Mar 2011
Posts: 8,645
Received Thanks: 3,454
Quote:
Originally Posted by mo.tennis View Post
so nächste frage

ehhm wenn ich einen porcess mit ProcessClose beenden will geb ich ja die pid an also :
ProcessClose ("zb. 3405")

was ist wenn sich die pid des programms nach jedem start ändert??
wie kann ich die nach jedem start neu raussuchen lassen?

.................
und Achat...danke hat mir sehr geholfen :d
$PID = ProcessExists("Prozess.exe")
Freddy​ is offline  
Old 05/12/2012, 21:59   #53
 
omer36's Avatar
 
elite*gold: 0
Join Date: Mar 2009
Posts: 2,317
Received Thanks: 1,255
Quote:
Originally Posted by mo.tennis View Post
so nächste frage

ehhm wenn ich einen porcess mit ProcessClose beenden will geb ich ja die pid an also :
ProcessClose ("zb. 3405")

was ist wenn sich die pid des programms nach jedem start ändert??
wie kann ich die nach jedem start neu raussuchen lassen?

.................
und Achat...danke hat mir sehr geholfen :d
Quote:
The name or PID of the process to terminate.
ProcessClose ("firefox.exe")
omer36 is offline  
Old 05/12/2012, 22:02   #54
 
mo.tennis's Avatar
 
elite*gold: 0
Join Date: Feb 2010
Posts: 178
Received Thanks: 4
das von omer36 hatte ich schon ausprobiert..werde jetzt das von FReddy ausprobieren



Edit:
Freddy was muss ich ejtzt genau schreiben?? ich hab jetzt:


vorher sah es so aus

mo.tennis is offline  
Old 05/12/2012, 22:17   #55


 
Lawliet's Avatar
 
elite*gold: 2
Join Date: Jul 2009
Posts: 14,456
Received Thanks: 4,685
Quote:
Originally Posted by mo.tennis View Post
das von omer36 hatte ich schon ausprobiert..werde jetzt das von FReddy ausprobieren



Edit:
Freddy was muss ich ejtzt genau schreiben?? ich hab jetzt:


vorher sah es so aus

Code:
While 1
		$PID = ProcessExists("RegClean Pro")
		ProcessClose ($PID)

WEnd
Denke aber, du musst "RegClean Pro.exe" schreiben.
Lawliet is offline  
Thanks
1 User
Old 05/13/2012, 03:27   #56
 
elite*gold: 0
Join Date: Mar 2009
Posts: 7,260
Received Thanks: 33,149
Wenn es sich um den Fenstertitel handelt könnte
Code:
WinClose("RegClean Pro")
evtl. ausreichen.
KDeluxe is offline  
Old 05/13/2012, 14:47   #57


 
Lawliet's Avatar
 
elite*gold: 2
Join Date: Jul 2009
Posts: 14,456
Received Thanks: 4,685
Kennt jemand zufällig eine Möglichkeit, in Files abschnitte zu löschen? Also etwa Zeichen 100-200 von 1000. Das File sollte nicht in den Arbeitsspeicher geladen werden, da es sehr groß sein kann.
FileReadLine sollte auch nicht verwendet werden, da kein Umbruch vorhanden ist.
Lawliet is offline  
Old 05/13/2012, 16:53   #58

 
Njahs's Avatar
 
elite*gold: 574
Join Date: Nov 2010
Posts: 2,498
Received Thanks: 726
Quote:
Originally Posted by Lawliet! View Post
Kennt jemand zufällig eine Möglichkeit, in Files abschnitte zu löschen? Also etwa Zeichen 100-200 von 1000. Das File sollte nicht in den Arbeitsspeicher geladen werden, da es sehr groß sein kann.
FileReadLine sollte auch nicht verwendet werden, da kein Umbruch vorhanden ist.

Hoffe ist das, was du wolltest ^^
Njahs is offline  
Thanks
1 User
Old 05/13/2012, 17:04   #59
 
Achat's Avatar
 
elite*gold: 528
Join Date: Jan 2012
Posts: 2,127
Received Thanks: 2,403
Quote:
Originally Posted by KDeluxe View Post
Wenn es sich um den Fenstertitel handelt könnte
Code:
WinClose("RegClean Pro")
evtl. ausreichen.
Code:
Opt('WinTitleMatchMode',2)
ProcessClose(WinGetProcess('RegClean Pro'))
;Für weitere Informationen F1 drücken oder fragen ;)
MfG


EDIT

Quote:
Originally Posted by Njahs View Post

Hoffe ist das, was du wolltest ^^
Wenn du das File vorher mit FileOpen öffnest und mit FileClose schließt, werden große Dateien sehr viel schneller gelesen.

Quote:
Originally Posted by HelpFile
If a filename is given rather than a file handle - the file will be opened and closed during the function call - for parsing large text files this will be much slower than using filehandles.
MfG
Achat is offline  
Old 05/13/2012, 17:13   #60


 
Lawliet's Avatar
 
elite*gold: 2
Join Date: Jul 2009
Posts: 14,456
Received Thanks: 4,685
Quote:
Originally Posted by Achat View Post
Code:
Opt('WinTitleMatchMode',2)
ProcessClose(WinGetProcess('RegClean Pro'))
;Für weitere Informationen F1 drücken oder fragen ;)
MfG


EDIT



Wenn du das File vorher mit FileOpen öffnest und mit FileClose schließt, werden große Dateien sehr viel schneller gelesen.



MfG
1-x Gigabyte aber nicht
_ReplaceStringinFile() schau ich mir an, danke
Lawliet is offline  
Reply


Similar Threads Similar Threads
[Sammelthread]Fragen zu Autoit wie man Hacks herstellt(Autoit) + Antworten
11/16/2011 - Metin2 - 0 Replies
Hallo Liebe Community, Ich habe diesen Thread aufgemacht weil manche leute mit Autoit nicht mehr weiterkommen wie man Hack herstellt ,ich habe mit schon ein Multihack mit Autoit herstellt das war einfach .Da viele User nicht weiterkommen werden habe ich mich entschieden ein Thread aufzumachen mit Fragen und ich den dann Antworten kann und helfen kann! ------------------------------------------------- --------------------------- Mein Multihack:...



All times are GMT +1. The time now is 03:15.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

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