Perhaps usefull for somebody:
; #########################################################################
.386
.model flat, stdcall
option casemap :none
; #########################################################################
include \masm32\include\windows.inc
include \masm32\include\user32.inc
include \masm32\include\kernel32.inc
includelib \masm32\lib\user32.lib
includelib \masm32\lib\kernel32.lib
SplitString PROTO :DWORD, :DWORD, :DWORD, :BYTE
; #########################################################################
.data
szFile db 512 dup (0)
szSize db 512 dup (0)
szTest db "Notepad.exe:57344", 0
.code
start:
mov al, ':'
invoke SplitString, addr szTest, addr szFile, addr szSize, al
invoke MessageBox, 0, addr szSize, addr szFile, MB_OK
invoke ExitProcess, eax
SplitString proc lpString:DWORD, lpBuffer1:DWORD, lpBuffer2:DWORD, lpDel:BYTE
push esi
push edi
mov esi, lpString
mov edi, lpBuffer1
@@:
mov al,
cmp al, lpDel
je @F
mov , al
inc esi
inc edi
jmp @B
@@:
inc esi ; skip delimiter
mov edi, lpBuffer2
@@:
mov al,
mov , al
inc esi
inc edi
or al, al
jnz @B
ret
SplitString endp
end start
This message was edited by bAZiK, on 7/7/2001 7:57:52 AM