purebasic.info

PureBasic forum
Текущее время: Пт июн 22, 2018 11:58 pm

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
СообщениеДобавлено: Пн мар 05, 2018 11:01 pm 
Не в сети
доцент

Зарегистрирован: Пн мар 05, 2018 4:49 am
Сообщений: 50
Благодарил (а): 4 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
Нужно перенести код с autoit на пурик.

Код:
1
2
3
4
5
6
7
8
9
Func _AES()
        $Struct = DllStructCreate("int eax; int ebx; int ecx; int edx")
        $StrCode = "0x515352518B7C24148B4424180FA28907895F04894F0889570C595A5B5831C0C20800"
        $tBinData = DllStructCreate("byte["& BinaryLen($StrCode) &"]")
        DllStructSetData($tBinData, 1, $StrCode)
        DllCallAddress("none", DllStructGetPtr($tBinData), "ptr", DllStructGetPtr($Struct), "int", 1)
        $AES = (BitAND(DllStructGetData($Struct, 3), 0x2000000))
        Return $AES
EndFunc



Гуглил, искал но ничего похожего не нашел.
Обсуждение на autoit : http://autoit-script.ru/index.php?topic=23921.0


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пн мар 05, 2018 11:31 pm 
Не в сети
док
Аватар пользователя

Зарегистрирован: Сб мар 28, 2015 11:06 pm
Сообщений: 139
Откуда: Україна
Благодарил (а): 7 раз.
Поблагодарили: 10 раз.
Пункты репутации: 4
1. http://autoit-script.ru/index.php?topic ... #msg137291 тут же код на пурике
2. ноги наверное отсюда viewtopic.php?t=4450


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Вт мар 06, 2018 12:52 am 
Не в сети
МОДЕРАТОР
Аватар пользователя

Зарегистрирован: Пн апр 09, 2007 4:53 pm
Сообщений: 11187
Благодарил (а): 4 раз.
Поблагодарили: 415 раз.
Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
Structure CPUINFO
  eax.i
  ebx.i
  ecx.i
  edx.i
EndStructure
 
Procedure CPUID(*CP.CPUINFO, eax)
 
  CompilerIf #PB_Compiler_Processor = #PB_Processor_x86
   
    !PUSH eax
    !PUSH ebx
    !PUSH edx
    !PUSH ecx
    !mov dword edi,[p.p_CP+16]
    !mov dword eax,[p.v_eax+16]
    !CPUID
    !mov dword [edi],eax
    !mov dword [edi+4],ebx
    !mov dword [edi+8],ecx
    !mov dword [edi+12],edx
    !pop ecx
    !pop edx
    !pop ebx
    !pop eax
   
  CompilerElse
   
    !PUSH rax
    !PUSH rbx
    !PUSH rdx
    !PUSH rcx
    !mov qword rdi,[p.p_CP+32]
    !mov qword rax,[p.v_eax+32]
    !CPUID
    !mov qword [rdi],rax
    !mov qword [rdi+8],rbx
    !mov qword [rdi+16],rcx
    !mov qword [rdi+24],rdx
    !pop rcx
    !pop rdx
    !pop rbx
    !pop rax
   
  CompilerEndIf
 
EndProcedure
 
 
CP.CPUINFO
 
CPUID(CP,1)
Debug CP\ecx>>25&1


_________________
Компьютер позволяет решать все те проблемы, которые до его изобретения не существовали. :) :)


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Вт мар 06, 2018 6:31 am 
Не в сети
доцент

Зарегистрирован: Пн мар 05, 2018 4:49 am
Сообщений: 50
Благодарил (а): 4 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
Спасибо, можно закрывать.


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 8


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group (блог о phpBB)
Сборка создана CMSart Studio
Русская поддержка phpBB