ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #201  
Старый 11.02.2008, 00:02
Аватар для TruPAC
TruPAC
Познающий
Регистрация: 20.12.2007
Сообщений: 36
Провел на форуме:
71113

Репутация: 20
По умолчанию

так ничего и не удалось разобрать самому. могу разве что сослаться но постоянную смену редакторов ресурсов каждым из которых двигала мания величия в виде вставки своих копирайтов в коментах и юзанием хз каких библиотек. вообщем на данный момент остановился на ResEd. поскольку у мене не получилось самому то остается один очень надежный вариант. ткните меня носом в правильны ответ.

вот полный текст и программы и ресурсов.

Код:
   .386
   .model flat,stdcall
   option casemap:none

   DlgProc proto :DWORD,:DWORD,:DWORD,:DWORD

   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

   .data
   ;DlgName db "MyDialog",0
   AppName db "First",0
      

   .data?
   hInstance HINSTANCE ?
   
   .const
   IDM_EXIT        equ 32003
   IDD_DLG2        equ  1000
   IDC_RED1                equ  1001


   .code

   start:

       invoke GetModuleHandle, NULL
       mov    hInstance,eax
       invoke DialogBoxParam, hInstance, IDD_DLG2, NULL, ADDR DlgProc, NULL
       invoke ExitProcess,eax

   DlgProc proc hWnd:HWND, uMsg:UINT, wParam:WPARAM, lParam:LPARAM
       .IF uMsg==WM_INITDIALOG
           invoke GetDlgItem, hWnd, IDC_RED1
           invoke SetFocus,eax
       .ELSEIF uMsg==WM_CLOSE
           invoke SendMessage, hWnd, WM_COMMAND, IDM_EXIT, 0
       .ENDIF
       mov eax,TRUE

       ret

   DlgProc endp

   end start
Код:
#define IDD_DLG2 1000
#define IDC_RED1 1001
IDD_DLG2 DIALOGEX 5,5,65,13
CAPTION "IDD_DLG"
FONT 10,"MS Sans Serif",400,0,204
STYLE 0x10CF0000
BEGIN
  CONTROL "IDC_RED",IDC_RED1,"RichEdit20A",0x50010000,1,1,63,11,0x00000200
END
 
Ответить с цитированием

  #202  
Старый 11.02.2008, 00:35
Аватар для ZET36
ZET36
Участник форума
Регистрация: 08.10.2007
Сообщений: 259
Провел на форуме:
500748

Репутация: 137
По умолчанию

Сразу приношу извенения я только начал изучать языки програмирования не считая скриптов. Решил начать с асемблера.

Посоветте с чего мне начать? где скачать програмное обеспечение для написания программ на асемблере?

я скачал с http://softok.org/coding/debug/13111prog.html Turbo Assembler Shell v.3.00
пробывал запустить простенький код
Код:
.data
msgtext db "Hello, WORLD", 0h
msgcap db "It is ASM!!! =)", 0h

.code
start:
INVOKE MessageBoxA, 0 offset msgtext, offset msgcap, 0
end start
конечно же неполучилось в ошибке пишут
Оut-file not found

какого выходного файла нету я понять немогу. вроде перед запуском проект сохранил.

посоветте пожалусто чтонибть для совсем зелёных. заранее благодарен
 
Ответить с цитированием

  #203  
Старый 11.02.2008, 02:26
Аватар для GlOFF
GlOFF
Постоянный
Регистрация: 08.05.2006
Сообщений: 816
Провел на форуме:
1845671

Репутация: 1338


По умолчанию

ZET36
Цитата:
DlgProc proc hWnd:HWND, uMsg:UINT, wParam:WPARAM, lParam:LPARAM
.IF uMsg==WM_INITDIALOG
invoke GetDlgItem, hWnd, IDC_RED1
invoke SetFocus,eax
.ELSEIF uMsg==WM_CLOSE
invoke EndDialog, hWndn, 0
.ENDIF
xor eax, eax

ret

DlgProc endp
Оконная процедура должна возвращать НОЛЬ. + по событию WM_CLOSE закрываем диалог.

CONTROL "IDC_RED",IDC_RED1,"RichEdit20A",0x50010000,1,1,63 ,11,0x00000200 - тут что-то неправильно!!!

Для примера попробуй заменить на
CONTROL "IDC_RED",IDC_RED1,"edit",0,1,1,63,11


Софт для асма бери на WWW.WASM.RU -> предпочтительно MASM or FASM.

Последний раз редактировалось GlOFF; 11.02.2008 в 02:34..
 
Ответить с цитированием

  #204  
Старый 11.02.2008, 12:55
Аватар для TruPAC
TruPAC
Познающий
Регистрация: 20.12.2007
Сообщений: 36
Провел на форуме:
71113

Репутация: 20
По умолчанию

ZET36
думаю для совсем зеленых подойдет вот этот вариант. если что то непонятно могу откоментировать. вот тут прямая ссылка на MASM. в нем я компилировал чего и вам желаю. http://wasm.ru/baixado.php?mode=tool&id=48

Код:
 
    .386
    .model flat,stdcall
    option casemap:none

    include \masm32\include\user32.inc
    include \masm32\include\kernel32.inc
    include \masm32\include\windows.inc

    includelib \masm32\lib\user32.lib
    includelib \masm32\lib\kernel32.lib

.data
    msgtext db "Hello, WORLD", 0h
    msgcap db "It is ASM!!! =)", 0h

.code
    start:

    invoke MessageBox, NULL, addr msgtext, addr msgcap, MB_OK
    invoke ExitProcess, NULL

    end start
GlOFF
хм.. где же в листинге вы нашли процедуру окна? я наконецто по лазил под отладчиком и наткнулся на то что при вызове диалоговой процедуры сначала ищется ресурс, если он не находится, то и не происходит вызова DialogBoxParam что и происходит у меня. вообщем посмотрел у Iczelion'a и нашел что у него имя ресурса задается ASCI-zero строкой. вообщем это внесло еще больше сумятицы в то что вы сказали что так нельзя. вы не могли бы довести проект до рабочего состояния, если вас не затруднит?
 
Ответить с цитированием

  #205  
Старый 11.02.2008, 13:14
Аватар для GlOFF
GlOFF
Постоянный
Регистрация: 08.05.2006
Сообщений: 816
Провел на форуме:
1845671

Репутация: 1338


По умолчанию

TruPAC Вот так попробуй компильнуть ->
PHP код:
.386
   
.model flat,stdcall
   option casemap
:none

   DlgProc proto 
:DWORD,:DWORD,:DWORD,:DWORD

   
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

   
.data
   AppName db 
"First",0
      

   
.data?
   
hInstance HINSTANCE ?
   
   .const
   
IDM_EXIT        equ 32003
   IDD_DLG2        equ  1000
   IDC_RED1                equ  1001


   
.code

   start
:

       
invoke GetModuleHandleNULL
       mov    hInstance
,eax
       invoke DialogBoxParam
hInstanceIDD_DLG2NULLADDR DlgProcNULL
       invoke ExitProcess
,eax

DlgProc proc hWnd
:HWNDuMsg:UINTwParam:WPARAMlParam:LPARAM
.IF uMsg==WM_INITDIALOG
invoke GetDlgItem
hWndIDC_RED1
invoke SetFocus
,eax
.ELSEIF uMsg==WM_CLOSE
invoke EndDialog
hWndn0
.ENDIF
xor 
eaxeax
ret

DlgProc endp

   end start 
+

PHP код:
#define IDD_DLG2 1000
#define IDC_RED1 1001
IDD_DLG2 DIALOGEX 5,5,65,13
CAPTION 
"IDD_DLG"
FONT 10,"MS Sans Serif"
STYLE 0x10CF0000
BEGIN
  CONTROL 
"IDC_RED",IDC_RED1,"edit",0,1,1,63,11
END 
TruPAC DlgProc - оконная\диалоговая процедура, обслуживает сообщения приходящие к данному диалогу. Просто щас сравни листинги и найди что изменилось.
 
Ответить с цитированием

  #206  
Старый 11.02.2008, 15:43
Аватар для TruPAC
TruPAC
Познающий
Регистрация: 20.12.2007
Сообщений: 36
Провел на форуме:
71113

Репутация: 20
По умолчанию

ё маё... ну сколько ж можно... и так тоже не работает. вроде бы все нормально - проверял на чужих исходниках и все прекрасно собирается, а тут нет. у вас это точно собирается? мб ошибка не только у меня? не обижайтесь, а вдруг? вы можете приатачить файлы? я уже просто с ума схожу - 6 дней возни на стенке кашей и толку 0.

Ps
я всегда различал оконную и диалоговую процедуры.
 
Ответить с цитированием

  #207  
Старый 11.02.2008, 18:02
Аватар для GlOFF
GlOFF
Постоянный
Регистрация: 08.05.2006
Сообщений: 816
Провел на форуме:
1845671

Репутация: 1338


По умолчанию

TruPAC Вот мой рабочий\компилируемый вариант ->
http://webfile.ru/1737398
 
Ответить с цитированием

  #208  
Старый 11.02.2008, 18:19
Аватар для TruPAC
TruPAC
Познающий
Регистрация: 20.12.2007
Сообщений: 36
Провел на форуме:
71113

Репутация: 20
По умолчанию

GlOFF
огромное спасибо! оказывается ошибка была в том что по какимто причинам мой линкер собирал новый вариант в папку общих документов и вместо того чтобы получить новый exe я работал со старым. сейчас я непременно посмотрю ваш вариант.
 
Ответить с цитированием

  #209  
Старый 12.02.2008, 13:13
Аватар для Minimus
Minimus
Новичок
Регистрация: 22.09.2007
Сообщений: 9
Провел на форуме:
312775

Репутация: 25
По умолчанию

гуру и не гуру,дайте пожалуйста консольный пример "Hello, Wolrd" на асме,а то обыскался уже.
 
Ответить с цитированием

  #210  
Старый 12.02.2008, 13:26
Аватар для Ky3bMu4
Ky3bMu4
Постоянный
Регистрация: 03.02.2007
Сообщений: 520
Провел на форуме:
1777536

Репутация: 932


Отправить сообщение для Ky3bMu4 с помощью ICQ
По умолчанию

wasm.ru/article.php?article=1022006
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопросы для новичков! (faq) PEPSICOLA С/С++, C#, Delphi, .NET, Asm 92 14.05.2010 17:59
Обзор программ для очистки жёсткого диска v1ru$ Soft - Windows 21 17.01.2010 21:07
ОС с нуля z01b С/С++, C#, Delphi, .NET, Asm 36 03.07.2008 15:30
Лучший софт для Linux _-Ramos-_ Soft - *nix 11 15.01.2008 12:08
Взлом Unix а silveran *nix 4 21.12.2005 22:46



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ