Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по программированию на C/С++

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

Открыть новую тему     Написать ответ в эту тему

bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

; ===============================================================
; ===============================================================
    .386                    ; процессор
    .model flat,stdcall            ; память плоская, stdcall определяет порядок передачи параметров слева-направо, а также что будет балансировать стек после вызова функции
    option casemap:none            ; в этой программе важны регистры букв
; ===============================================================
    include \masm32\include\windows.inc    ; библиотеки используемые программой
 
    include \masm32\include\user32.inc
    include \masm32\include\kernel32.inc
    include \masm32\include\shell32.inc
    include \MASM32\include\wininet.inc
    include \MASM32\INCLUDE\shlwapi.inc
 
    includelib \masm32\lib\user32.lib
    includelib \masm32\lib\kernel32.lib
    includelib \masm32\lib\shell32.lib
    includelib \MASM32\lib\wininet.lib    ; точка с запятой отделяют ремарки от основного кода программы
    includelib \MASM32\LIB\shlwapi.lib
; ===============================================================
.data                        ; секция данных
String db 'Текстовый документ Текстовый документ Текстовый документ.txt',0
;String db '[RuTor.Org]Карьера_охранника_Де.torrent',0
;String db '',0
;String db '[RuTor.Org]Insadong_Scandal.torrent[RuTor.Org]Insadong_Scandal.torrent',0
 
;String    db 'Текстовый документ Текстовый документ Текстовый документ.txt',0
;String db 'АаБбВвГгДдЕеЁёЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЭэЮюЯяЫыЪъЬь',0
;String db 'РђР°Р‘Р±Р’РІР“РіР”РґР•РµРЃС‘Р–Р¶Р—Р·Р˜РёР™Р№РљРєР›Р»РњРјРќРЅРћРѕРџРїР СЂРЎСЃРўС‚РЈСѓР¤С„РҐС…Р¦С†Р§С‡РЁС€Р©С‰Р-эЮюЯяЫыЪъ',0
 
; ===============================================================
.data?                        ; секция с неинициализированными данными, они не включается в исполняемый файл и появляется только тогда, когда программа загружается в память
 
    PointToString    dd ?
    COnvertBuffer    db INTERNET_MAX_URL_LENGTH dup (?)
            db INTERNET_MAX_URL_LENGTH dup (?)
    COnvertBufSize    dd ?
    COnvertStrSize    dd ?
 
; ===============================================================
.code                        ; начало кода
start:                        ; старт
 
mov PointToString, offset String
 
invoke lstrlen,PointToString
mov COnvertStrSize, eax
invoke MultiByteToWideChar, CP_UTF8, 0, PointToString, COnvertStrSize, COnvertBufSize, 0
mov COnvertBufSize, eax
invoke MultiByteToWideChar, CP_UTF8, 0, PointToString, COnvertStrSize, addr COnvertBuffer, COnvertBufSize
invoke WideCharToMultiByte,CP_ACP,0,addr COnvertBuffer,COnvertBufSize,PointToString,COnvertStrSize,0,0
mov eax, COnvertBufSize
lea ebx,String
add eax, ebx
mov byte ptr [eax], 0
 
invoke MessageBox,0,addr String,0,0
 
    invoke    ExitProcess,0            ; выходим из программы, eax - код возврата
 
end start                    ; конец ассемблирования
 
 

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 20:08 30-11-2011
Открыть новую тему     Написать ответ в эту тему

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по программированию на C/С++


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru