Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Закрытая тема
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 03.10.2008, 16:01
LukS LukS вне форума
Прохожий
 
Регистрация: 03.10.2008
Сообщения: 4
Репутация: 10
Вопрос DWORD в Integer

Не пинайте сильно, в PHP, который я знаю таких типов нет, и я не знаю как их преобразовывать... Вообщем делаю загрузчик файлов, нужно установить в g1.Progress значение типа Integer, имея переменную blablavar типа DWORD... DWORDtoInt() не нашел
  #2  
Старый 03.10.2008, 17:29
LukS LukS вне форума
Прохожий
 
Регистрация: 03.10.2008
Сообщения: 4
Репутация: 10
Смех

Эх-эх... Держите DLL'ку (сделал в C++, порывшись в китайском поисковике).
Грузим с помощью LoadLibrary().
DWtoInt(dwNum : DWORD) : integer

PHP код:
EXPORT int DWtoInt(DWORD dwNum)
{
    
int ret;
    
ret static_cast <int> (dwNum);
    return 
ret;


P.S. не ржать - ну не нашел я функции, а с C++ я не много дружу
Вложения
Тип файла: rar DWtoInt.rar (3.6 Кбайт, 5 просмотров)

Последний раз редактировалось LukS, 03.10.2008 в 17:32.
  #3  
Старый 03.10.2008, 17:32
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,051
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Ребят, вы издеваетесь???

DWORD и Integer абсолютно совместимые типы и в Delphi производится простым присваиванием. Только надо помнить, что Integer - знаковое, а DWORD - нет. Т.е. у Integer старший бит хранит информацию о знаке числа, Т.е. могут быть некоторые проблемы, если значение в DWORD больше 2х миллиардов.
  #4  
Старый 03.10.2008, 17:34
LukS LukS вне форума
Прохожий
 
Регистрация: 03.10.2008
Сообщения: 4
Репутация: 10
По умолчанию

Цитата:
Сообщение от lmikle
Ребят, вы издеваетесь???

DWORD и Integer абсолютно совместимые типы и в Delphi производится простым присваиванием. Только надо помнить, что Integer - знаковое, а DWORD - нет. Т.е. у Integer старший бит хранит информацию о знаке числа, Т.е. могут быть некоторые проблемы, если значение в DWORD больше 2х миллиардов.
У меня не получилось:
g1.MaxValue := BufferAllLenght;
Писало про несовместимые типы... Делфи 7 (Lite) Я не издеваюсь. Хотя самому смешно ради функции делать DLL'ку...
  #5  
Старый 03.10.2008, 17:38
LukS LukS вне форума
Прохожий
 
Регистрация: 03.10.2008
Сообщения: 4
Репутация: 10
По умолчанию

Проблема решена - нужно было чуть подредактировать кое-какие свойства... Теперь я дружу с DWORD'ом Прозьба закрыть тему.
Закрытая тема


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 11:13.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter