Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Assembler

Страница: 1 | 2 | 3 | 4 |

 

  Вопрос: Windows Windows Windows VC++ Добавлено: 01.09.06 17:07  

Автор вопроса:  mikityak
- Если я правельно понял в "Masm32" есть
  три способа зделать и показать окно ...

- Первая обявление класа, создания, показ
  окна... (создаем окно в малейшых диталях,
  прописывая все непосрецтвено в нашем коде)

- Второй то самое (включая цыкл сообщений
  виндовоза) но размер окна, цвет позыция ...
  находитса в "Rsrc.rc" -> Dialog

- Третий ...
  Содержыт только процедуру сообщений...
; ---------------------------------------------------------------
.486                       ; create 32 bit code
.model flat, stdcall       ; 32 bit memory model
option casemap :none       ; case sensitive
; ---------------------------------------------------------------
;подключение библиотек,необходимых нам
Include \MASM32\INCLUDE\Windows.inc

Include \MASM32\INCLUDE\User32.inc
Include \MASM32\INCLUDE\Kernel32.inc
Include \MASM32\INCLUDE\Shell32.inc

IncludeLib \MASM32\LIB\User32.lib
IncludeLib \MASM32\LIB\Kernel32.lib
IncludeLib \MASM32\LIB\Shell32.lib

DlgProc PROTO :DWORD,:DWORD,:DWORD,:DWORD
; ---------------------------------------------------------------      
;раздел, где объявляются все константы
.const
      IDD_DLG1 equ 1000
IDC_BTN1 equ 1001
IDC_EDT1 equ 1002

IDM_ABOUT equ 1001
IDM_EXIT  equ 1003
; ---------------------------------------------------------------
;раздел, где объявляются переменные, уже имеющие какое-то значение
.data
strTitle    db "AboutBox # Name Programme",0
Copyright   db "Masm32 Version 8.2",10,13,"Programmer: mikityak@ukr.net",0
hIcon       dd 0
; ---------------------------------------------------------------
;раздел, где объявляются переменные, еще не имеющие значения
.data?
hInstance HINSTANCE ?
.code
start: ;с этого слова начинается код программы
; ---------------------------------------------------------------
invoke GetModuleHandle, NULL
  mov    hInstance,eax
invoke DialogBoxParam, hInstance, IDD_DLG1,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_EDT1
           invoke SetFocus,eax

           invoke LoadIcon,hInstance,1
            mov hIcon, eax
           invoke SendMessage,hWnd,WM_SETICON,1,hIcon
        
       .ELSEIF uMsg==WM_CLOSE
           invoke SendMessage,hWnd,WM_COMMAND,IDM_EXIT,0
       .ELSEIF uMsg==WM_COMMAND
           mov eax,wParam
           .IF lParam==0
               .IF ax==IDM_ABOUT
                invoke ShellAbout, hWnd, ADDR strTitle, ADDR Copyright, hIcon
.ELSEIF ax==IDM_EXIT
invoke EndDialog, hWnd,NULL
.ENDIF
           .ELSEIF
               .IF ax==IDC_BTN1
                invoke SetDlgItemText,hWnd,IDC_EDT1,ADDR strTitle
               .ENDIF
           .ENDIF      
       .ELSE
           mov eax,FALSE
           ret
       .ENDIF
       mov eax,TRUE

       ret

DlgProc endp
; ---------------------------------------------------------------
end start ;с этого слова заканчивается код программы

- Вся остальная шалуха спрятана ... (цыкл сообщений, позицыя-размер окна)
- У миня вопрос в "Microsoft Visual C++ 6.0 Enterprise Editor"
  я нашол первый и второй способ ( второй з "MFC" ) .
  Но вот третий, мне нужно штобы загрузил среду
  "MVC++" -> File -> New -> Win32 Application -> A simple Win32 application -> Finish
  и вот тут как зделать окошко повторюсь без "MFC"
// Test.cpp : Defines the entry point for the application.
//

#include "stdafx.h"

int APIENTRY WinMain(HINSTANCE hInstance,
                     HINSTANCE hPrevInstance,
                     LPSTR     lpCmdLine,
                     int       nCmdShow)
{
  // TODO: Place code here.

return 0;
}

Ответить

  Ответы Всего ответов: 59  

Номер ответа: 1
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5439
 Web-сайт: hw.t-k.ru
 Профиль | | #1
Добавлено: 02.09.06 02:44
создать окошко - 2 способа: WinAPI/Dialogs
на си то же, винмэйн это всего-лишь точка входа.

Ответить

Номер ответа: 2
Автор ответа:
 mikityak



Вопросов: 23
Ответов: 237
 Профиль | | #2 Добавлено: 02.09.06 12:22
Мне интересно есть ли в "MVC++" такое как у "Masm32"
invoke DialogBoxParam, hInstance, IDD_DLG1,NULL,addr DlgProc,NULL

Ответить

Номер ответа: 3
Автор ответа:
 mikityak



Вопросов: 23
Ответов: 237
 Профиль | | #3 Добавлено: 04.09.06 14:26
это всего-лишь точка входа.

- Если будит такая ласка а што сней делать дальше
  ;(нужно зделать окно)

Ответить

Номер ответа: 4
Автор ответа:
 Ra$cal



ICQ: 8068014 

Вопросов: 18
Ответов: 817
 Web-сайт: www.rascalspb.narod.ru
 Профиль | | #4
Добавлено: 15.09.06 23:58
Сделать ;)
DialogBox (GetModuleHandle(0), MAKEINTRESOURCE(IDD_DLG_MAIN), hDlg/* Ноль если нет родительских*/, (DLGPROC) DLG_Main);

Ответить

Номер ответа: 5
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5439
 Web-сайт: hw.t-k.ru
 Профиль | | #5
Добавлено: 16.09.06 00:04
createwindowex в руки.

Ответить

Номер ответа: 6
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5439
 Web-сайт: hw.t-k.ru
 Профиль | | #6
Добавлено: 16.09.06 00:05
createwindowex в руки.

Ответить

Номер ответа: 7
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 235
Ответов: 8360
 Профиль | | #7 Добавлено: 18.09.06 02:20
http://wasm.ru/article.php?article=1001003

Ж)))

Ответить

Номер ответа: 8
Автор ответа:
 mikityak



Вопросов: 23
Ответов: 237
 Профиль | | #8 Добавлено: 31.10.06 14:23
 Народ понял свою ошыпку ...
 Поставлю вопрос по другому ...

 Мне нужно в MS Visual C++ 6.0 Окно которое зделано с помощу встроеного редактора ресурсов зделать основным (frmMain).

 Wizard например делает About Dialog с помощю редактора ресурсов а главное нет.

Ответить

Номер ответа: 9
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #9
Добавлено: 31.10.06 20:28
Да, DialogBoxParam в VC++ есть

Ответить

Номер ответа: 10
Автор ответа:
 mikityak



Вопросов: 23
Ответов: 237
 Профиль | | #10 Добавлено: 05.11.06 12:04
Да, DialogBoxParam в VC++ есть

- Tak uжe ect proriv a po podrobney moжna
  ;(izveni klava ubita)

Ответить

Номер ответа: 11
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #11
Добавлено: 05.11.06 12:18
А поподробнее в MSDN

Ответить

Номер ответа: 12
Автор ответа:
 mikityak



Вопросов: 23
Ответов: 237
 Профиль | | #12 Добавлено: 05.11.06 12:24
- Izveni net vozmoжnosti Download

Ответить

Номер ответа: 13
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #13
Добавлено: 05.11.06 13:56
Mozgno i ne Download
http://www.msdn.com

Ответить

Номер ответа: 14
Автор ответа:
 mikityak



Вопросов: 23
Ответов: 237
 Профиль | | #14 Добавлено: 06.11.06 12:13
- Хорошо тибе а я например не имею такой возможности качать большые файлы, тай тут подумал "English" тоже
хромает немогди придложыть штонибуть другое (Download)

Ответить

Номер ответа: 15
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #15
Добавлено: 06.11.06 17:15
Ты по ссылке хотя бы зашел?

Ответить

Страница: 1 | 2 | 3 | 4 |

Поиск по форуму





© Copyright 2002-2011 VBNet.RU | Пишите нам