Lo que quiero es recibir el path del propio ejecutable:
Supongo que habra otras formas de hacerlo, mas rapidas o quizas mas eficaces, pero quiero ir teniendo soltura con asm
Código
invoke GetModuleFileName, 0, addr temp, 256 mov esi, esp push esi ;Solo el path .if i == 1 xor eax,eax loop_len: mov dl,[esi] .if dl == 5Ch; \ mov eax, esi .elseif dl == 0 jmp done .endif inc esi jmp loop_len done: ; Aqui teniendo la posicion del ultimo \ quiero sobreescribirla con un caracter nulo para cuando coja "esi" solo me devuelva el path mov eax, 0 .endif
EDIT:
He logrado hacerlo poniendo esto
mov ebx, 0
mov [eax], ebx
No abro otro hilo ya que esta duda esta relacionada con lo anterior...
Esto es lo que tengo:
ESI: apunta a toda la cadena
EAX: Apunta a una posicion dentro de esa cadena
Como hago para que esi "apunte" a la direccion que esta en EAX
Ejemplo:
String original: "Mi casa tiene dos ventanas"
ESI apunta a "M" y sigue hasta encontrar un caracter nulo, por lo tanto obtendria la string original
Si reemplzazo el caracter "d" de la palabra "dos", obtendre a partir de ESI => "Mi casa tiene ", ahora lo que quiero obtener es "os ventanas"