Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

ShellExecute - параметр.

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Прочее] >> ShellExecute - параметр.
Имя
Сообщение << Старые топики   Новые топики >>
ShellExecute - параметр. - 2009-03-11 15:16:39.666666   
Kerny

Сообщений: 41
Оценки: 0
Присоединился: 2008-12-11 15:39:17.436666
Не пойму, что не так cmd запускается, но без параметров!!!
.386 .model flat,stdcall option casemap:none includelib C:\masm32\lib\kernel32.lib includelib C:\masm32\lib\user32.lib include C:\masm32\include\windows.inc include C:\masm32\include\kernel32.inc include C:\masm32\include\user32.inc includelib C:\masm32\lib\shell32.lib include C:\masm32\include\shell32.inc .data open BYTE "open",0 filename BYTE "cmd.exe",0 param BYTE "mkdir 77777",0 .code start: ;код запускает любую прогу, сл. команда указатель на прогу invoke ShellExecute, 0, addr open, addr filename, addr param, 0, SW_SHOW invoke ExitProcess,0 end start
Помогите плиз…
Post #: 1
RE: ShellExecute - параметр. - 2009-03-11 16:51:21.750000   
=Мaster_Riv=

Сообщений: 9
Оценки: 0
Присоединился: 2009-03-05 18:22:28.716666
а что ты хоч откомпилировать а?
Post #: 2
RE: ShellExecute - параметр. - 2009-03-11 17:07:28.883333   
Kerny

Сообщений: 41
Оценки: 0
Присоединился: 2008-12-11 15:39:17.436666

quote:

ORIGINAL: =Мaster_Riv=

а что ты хоч откомпилировать а?


НЕТ! cmd должен запустится с параметром mkdir 77777, тоесть создать папку с именем 77777, а он запускается без параметров!!!
Post #: 3
RE: ShellExecute - параметр. - 2009-03-11 17:10:26.970000   
Flint_ta

Сообщений: 3720
Оценки: 1120
Присоединился: 2007-01-26 15:49:18.323333
Тогда создай файл bat или cmd с таким содержимым и запусти его через то-же ShellExecute
Post #: 4
RE: ShellExecute - параметр. - 2009-03-11 18:25:14.220000   
Kerny

Сообщений: 41
Оценки: 0
Присоединился: 2008-12-11 15:39:17.436666

quote:

ORIGINAL: Flint_ta

Тогда создай файл bat или cmd с таким содержимым и запусти его через то-же ShellExecute

так и делаю, но как мне

.386 .model flat,stdcall option casemap:none includelib C:\masm32\lib\kernel32.lib include C:\masm32\include\kernel32.inc includelib C:\masm32\lib\user32.lib include C:\masm32\include\windows.inc .data fname BYTE "file1.bat",0 fh DWORD ? cW DWORD ? nB BYTE "строка1",0 nB2 byte "строка2",0 nB3 byte "строка3",0 nB4 byte "строка4",0 enter byte 00ah,0 ; перевод каретки .code start: invoke CreateFile, addr fname, GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_ARCHIVE,0 mov fh,eax invoke WriteFile,fh,addr nB,7, addr cW,NULL ;записываем первую строку invoke WriteFile,fh,addr enter,1, addr cW,NULL ;для того чтобы содержимое в файле было на сл. строчке invoke WriteFile,fh,addr nB2,7, addr cW,NULL ;вторую invoke WriteFile,fh,addr enter,1, addr cW,NULL ; invoke WriteFile,fh,addr nB3,7, addr cW,NULL ;третью invoke WriteFile,fh,addr enter,1, addr cW,NULL ; invoke WriteFile,fh,addr nB4,7, addr cW,NULL ;четвертую invoke WriteFile,fh,addr enter,1, addr cW,NULL ; invoke CloseHandle,fh push offset fname CALL WinExec invoke ExitProcess,0 end start
как это организовать иначе, проще, а то так записывать по строкам - не годится, пробывал 1 большой массив, там записывалось в сплошную строку:

.386 .model flat,stdcall option casemap:none includelib C:\masm32\lib\kernel32.lib include C:\masm32\include\kernel32.inc includelib C:\masm32\lib\user32.lib include C:\masm32\include\windows.inc .data fname BYTE "file1.bat",0 fh DWORD ? cW DWORD ? nB BYTE "строка1 строка2 строка3 строка4",0 .code start: invoke CreateFile, addr fname, GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_ARCHIVE,0 mov fh,eax invoke WriteFile,fh,addr nB,31, addr cW,NULL ;записываем первую строку invoke CloseHandle,fh push offset fname CALL WinExec invoke ExitProcess,0 end start
Как мне сделать по - строкам.
Post #: 5
RE: ShellExecute - параметр. - 2009-03-11 18:44:22.810000   
Flint_ta

Сообщений: 3720
Оценки: 1120
Присоединился: 2007-01-26 15:49:18.323333
.386 .model flat,stdcall option casemap:none includelib C:\masm32\lib\kernel32.lib include C:\masm32\include\kernel32.inc includelib C:\masm32\lib\user32.lib include C:\masm32\include\windows.inc .data fname BYTE "file1.bat",0 fh&nbsp;&nbsp;&nbsp; DWORD ? cW&nbsp;&nbsp;&nbsp; DWORD ? nB&nbsp;&nbsp;&nbsp; BYTE "строка1",0 perenos db 0dh, 0ah .code start: invoke CreateFile, addr fname, GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_ARCHIVE,0 mov fh,eax invoke WriteFile,fh,addr nB,7, addr cW,NULL&nbsp;&nbsp; ;записываем строку invoke WriteFile,fh,addr perenos,2, addr cW,NULL&nbsp; ;записываем пернос и возврат каретки invoke WriteFile,fh,addr nB,7, addr cW,NULL&nbsp;&nbsp; ;записываем строку invoke CloseHandle,fh push 0 push offset fname CALL WinExec invoke ExitProcess,0 end start
Post #: 6
RE: ShellExecute - параметр. - 2009-03-11 19:11:59.823333   
Kerny

Сообщений: 41
Оценки: 0
Присоединился: 2008-12-11 15:39:17.436666
.data fname BYTE "file1.bat",0 fh DWORD ? cW DWORD ? nB BYTE "строка1",0 nB2 byte "строка2",0 nB3 byte "строка3",0 nB4 byte "строка4",0 enter byte 00ah,0 ; перевод каретки .code start: invoke CreateFile, addr fname, GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_ARCHIVE,0 mov fh,eax invoke WriteFile,fh,addr nB,7, addr cW,NULL ;записываем первую строку invoke WriteFile,fh,addr enter,1, addr cW,NULL ;для того чтобы содержимое в файле было на сл. строчке invoke WriteFile,fh,addr nB2,7, addr cW,NULL ;вторую invoke WriteFile,fh,addr enter,1, addr cW,NULL ; invoke WriteFile,fh,addr nB3,7, addr cW,NULL ;третью invoke WriteFile,fh,addr enter,1, addr cW,NULL ; invoke WriteFile,fh,addr nB4,7, addr cW,NULL ;четвертую invoke WriteFile,fh,addr enter,1, addr cW,NULL ;
Так ведь у меня также….
Post #: 7
RE: ShellExecute - параметр. - 2009-03-12 15:47:13.070000   
Kerny

Сообщений: 41
Оценки: 0
Присоединился: 2008-12-11 15:39:17.436666
.data open BYTE "open",0 filename BYTE "cmd.exe",0 param BYTE "%/k mkdir 1111",0 .code start: invoke ShellExecute, 0, addr open, addr filename, addr param, 0, SW_SHOW invoke ExitProcess,0 end start
Вот сделал!!!

Некоторые подробности:

http://forum.vingrad.ru/forum/s/8a805fef319545e8ae5188bedf3921b0/topic-197933.html
Post #: 8
RE: ShellExecute - параметр. - 2009-03-12 16:41:09.500000   
VaZoNeZ

Сообщений: -6758
Оценки: 0
Присоединился: 2008-10-31 14:38:43.796666
А не проще сделать без батника ?

.386 .model flat, stdcall option casemap :none ; case sensitive include \masm32\include\windows.inc include \masm32\include\kernel32.inc include \masm32\include\user32.inc include \MASM32\INCLUDE\gdi32.inc includelib \masm32\lib\kernel32.lib includelib \masm32\lib\user32.lib includelib \MASM32\LIB\gdi32.lib .data fff db 'WhatTheFuck',0 .code START: invoke CreateDirectory, addr fff, 0 invoke ExitProcess, 0 end START
Post #: 9
RE: ShellExecute - параметр. - 2009-03-13 12:22:29.116666   
Kerny

Сообщений: 41
Оценки: 0
Присоединился: 2008-12-11 15:39:17.436666
Во - первых уже все сделано, без батника.
Во - вторых создание папки было приведено, как пример, на самом деле важно исполнение любых команд, а не создания директорий.
Post #: 10
Страниц:  [1]
Все форумы >> [Прочее] >> ShellExecute - параметр.







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.