Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Различие 32-bit от 16-bit Добавлено: 01.04.06 16:18  

Автор вопроса:  Vilya | Web-сайт: нету | ICQ: 232995216 
Как программно отличить 32-битное приложение от 16-битного???

Ответить

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

Номер ответа: 1
Автор ответа:
 BUG(O)R



ICQ: 827887 

Вопросов: 13
Ответов: 142
 Web-сайт: hunger.ru
 Профиль | | #1
Добавлено: 01.04.06 17:32
В PE файле после DOS-MZ загововка идёт Dos-stub, там есть поле e_lfanew(подробнее смотри структуру IMAGE_DOS_HEADER) оно указывает на PE-заголовок(смотри структуру IMAGE_NT_HEADERS), вот этот заговок, если файл является win32 приложением , должен начинаться так: &H4550, т.е. "PE". Если он так не начинается, то файл не является 32 битным приложением.

Если пример нужен говори, соберу:)

Ответить

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



ICQ: 232995216 

Вопросов: 12
Ответов: 63
 Web-сайт: нету
 Профиль | | #2
Добавлено: 03.04.06 03:57
Почти нифига непонял =)

Дай примерчик плиз

vit-sh@yandex.ru

Ответить

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


 

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

Вопросов: 236
Ответов: 8362
 Профиль | | #3 Добавлено: 03.04.06 13:00
может просще бинарно считать файл и посмотреть наличие "This program must be run under Win32"

Ответить

Номер ответа: 4
Автор ответа:
 HOOLIGAN



Вопросов: 0
Ответов: 1066
 Профиль | | #4 Добавлено: 03.04.06 16:14
    Dim s As String * 256
    Open "C:\upx.exe" For Binary Access Read As #1
    Get #1, 79, s
    Close #1
    If Left$(s, Len("This program cannot be run in DOS mode.";)) = "This program cannot be run in DOS mode." Then
        MsgBox "32 bit"
    Else
        MsgBox "16 bit"
    End If

Ответить

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



ICQ: 232995216 

Вопросов: 12
Ответов: 63
 Web-сайт: нету
 Профиль | | #5
Добавлено: 04.04.06 13:50
Большое спасибо

Ответить

Страница: 1 |

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



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