Воскресенье
09.02.2025
02:42
Форма входа
Поиск
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Статистика

    OPEN SOURCE PROJECT

    [ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
    • Страница 1 из 1
    • 1
    Посмотрите
    andXreiДата: Вторник, 10.03.2009, 10:35 | Сообщение # 1
    Майор
    Группа: Проверенные
    Сообщений: 95
    Репутация: 2
    Статус: Offline
    Что в этом алгоритме не правельно???

    format PE GUI 4.0
    include 'win32a.inc'

    section '.data' data readable writable

    Text db 'Вы действительно хотите создать папку',0
    Caption db 'Вопрос',0
    ipPachName db 'C:\FOLDER',0

    section '.code' code readable executable

    invoke MessageBoxA,0,Text,Caption,MB_ICONQUESTION+MB_YESNOCANCEL
    cmp eax,IDNO
    je CANCEL
    cmp eax,IDYES
    jne CODA

    CANCEL:
    invoke ExitProcess,0
    jmp exit

    CODA:
    invoke CreateDirectory,ipPachName,0
    invoke ExitProcess,0

    section '.idata' import data readable writeable
    library kernel32,'KERNEL32.DLL',\
    user32,'USER32.DLL'

    import user32,\
    MessageBoxA,'MessageBoxA'

    import kernel32,\
    CreateDirectoryA,'CreateDirectoryA',\
    ExitProcess,'ExitProcess'

    Добавлено (10.03.2009, 10:35)
    ---------------------------------------------
    По задумке этот код должен выдать сообщение 'Вы действительно хотите создать папку' если нажать кнопку YES [ДА] то создаеться папка в директории folder [C:\] если NO нажать то выполняеться функция ExitProcess
    Запускаеться только ни чего не происходит??

    Сообщение отредактировал andXrei - Вторник, 10.03.2009, 14:35
     
    fasmДата: Вторник, 10.03.2009, 15:38 | Сообщение # 2
    Admin
    Группа: Заблокированные
    Сообщений: 122
    Репутация: 5
    Статус: Offline
    format PE GUI 4.0
    include 'win32a.inc'
    entry start - с этой метки начинает исполнятся код

    сразу бросается в глаза, что нет метки start: или подобной, при запуске прога натыкается на не допустимые инструкции и просто рушится...

     
    andXreiДата: Вторник, 10.03.2009, 16:40 | Сообщение # 3
    Майор
    Группа: Проверенные
    Сообщений: 95
    Репутация: 2
    Статус: Offline
    заменить jne на je в этой строке
    Quote
    je CANCEL
    cmp eax,IDYES
    jne CODA

    и убрать jmp exit в этой
    Quote
    CANCEL:
    invoke ExitProcess,0
    jmp exit

    и тогда все запуститься


    Сообщение отредактировал andXrei - Вторник, 10.03.2009, 16:41
     
    fasmДата: Вторник, 10.03.2009, 20:27 | Сообщение # 4
    Admin
    Группа: Заблокированные
    Сообщений: 122
    Репутация: 5
    Статус: Offline
    Quote
    и тогда все запуститься

    ну и... это типа меня проверяешь?
     
    andXreiДата: Среда, 11.03.2009, 10:29 | Сообщение # 5
    Майор
    Группа: Проверенные
    Сообщений: 95
    Репутация: 2
    Статус: Offline
    Верней не запустится а будет работать как было задумано!! tongue

    Сообщение отредактировал andXrei - Среда, 11.03.2009, 10:30
     
    fasmДата: Среда, 11.03.2009, 11:12 | Сообщение # 6
    Admin
    Группа: Заблокированные
    Сообщений: 122
    Репутация: 5
    Статус: Offline
    biggrin
     
    • Страница 1 из 1
    • 1
    Поиск: