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

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

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

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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 55 56 57

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

data man



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Обсуждаем новые возможности и баги
Просьба писать только про Embarcadero RAD Studio XE2 (Pulsar) - по остальным версиям есть соответствующие темы.

Вопросы вареза здесь не обсуждаются !!!
См. также:


Из слишком часто повторяемых вопросов:
  1. Почему EXE такие большие - перевод статьи от Andy тут, оригинал на страницу назад.
  2. Что случилось c авто-увеличением Build Number - Объяснение на англ.. Можно отключить встроенную функцию и добавить плагин, в котором есть "старый" авто-инкремент. Например DDevExtensions от Andy. У него так же есть хороший плагин IDE FixPack

Всего записей: 1696 | Зарегистр. 13-10-2005 | Отправлено: 23:54 27-07-2011 | Исправлено: Arioch1, 16:08 25-04-2013
LG Team



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
компилил ли кто под iOS?
напишите плиз как проще собрать xCode и возможно ли под виндой?
то что нашел, какой-то долгий и муторный процесс..

Всего записей: 328 | Зарегистр. 04-12-2006 | Отправлено: 00:07 08-12-2011 | Исправлено: LG Team, 14:08 08-12-2011
RageSV

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

Цитата:
компилил ли кто под андройд

Под какой еще андроид?

Всего записей: 72 | Зарегистр. 20-01-2006 | Отправлено: 12:58 08-12-2011
mdid

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
черт как же я надеялся что хоть тут сделают свойство Tag не интовым...но шо за нафиг...за что они нас так не любят

Всего записей: 1298 | Зарегистр. 13-02-2006 | Отправлено: 16:28 08-12-2011
mdid

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
хелп плиз...нашел туториал по созданию приложений для iOS http://www.youtube.com/watch?v=h93CZV9bRaQ
моя беда в том что не могу сделать экспорт xcode
настроил как на видео
   
но у меня не создается файл *.xcodeproj
файл dpr2xcode.exe присутствует
 
что не так?
--------------------------------------------------------
упс...пардон господа....это оказывается папка

Всего записей: 1298 | Зарегистр. 13-02-2006 | Отправлено: 02:24 10-12-2011 | Исправлено: mdid, 02:33 10-12-2011
VadimLou



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

Цитата:
Tag

class helpers тебе тут поможет

Всего записей: 702 | Зарегистр. 22-07-2004 | Отправлено: 03:11 10-12-2011 | Исправлено: VadimLou, 03:11 10-12-2011
mdid

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

Цитата:
class helpers тебе тут поможет

извращения извращениями...но я просто мечтаю о типе Tag как array of variant...лично мне бы это на столько жизнь облегчило что просто пипец
 

Всего записей: 1298 | Зарегистр. 13-02-2006 | Отправлено: 21:29 12-12-2011 | Исправлено: mdid, 23:17 12-12-2011
Frodo_Torbins

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mdid
"array of variant" наталкивает на мысль, что у вас "бизнес логика" сильно завязана на интерфейс. Умные люди говорят, что это плохо. И я кстати убеждаюсь в их правоте на примере доставшегося мне этим летом в наследство проекта.

Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 22:41 12-12-2011
mdid

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
а чем плохо?может я узко гляжу на проблему...но кроме дополнительного контроля минусов я не вижу...размер не определенного array of variant будет равен типу int то есть 4 байта...посему больших утечек нет..за то колоссальное удобство в пихании в сей массив всего что надо будет..конечно 16 байт за одну ячейку это дорого..но мне кажется оно стоит того

Всего записей: 1298 | Зарегистр. 13-02-2006 | Отправлено: 23:11 12-12-2011
MrZeRo



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mdid
Integer легко преобразуется в Pointer, и наоборот ....
 
Никто не мешает создать указатель на класс, являющийся, например, коллекцией или содержащий вообще что угодно:
 

Цитата:
 
//we created our super-mega class instance
MySuperClass := TMySuperClass();
...
//assign this class instance reference to Tag
Tag := Integer(Pointer(MySuperClass));
...
//retrieve our class instance reference back
AnotherSuperClass := TMySuperClass(Pointer(Tag));
 

 
Как-то так ...
 
Но решение проблемы утечек памяти в этом случае целиком и полностью на программисте - нужно предусмотреть механизм вызова деструкторов созданных супер-мега классов.

----------
... не это главное ...

Всего записей: 831 | Зарегистр. 30-01-2002 | Отправлено: 23:18 12-12-2011 | Исправлено: MrZeRo, 23:23 12-12-2011
AnViSe



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Может я что пропустил иль не нашел, простите...
Установлен Delphi XE2 Update 2, при компиляции пустого проекта (одна только главная форма) вылазит ошибка:
[DCC Fatal Error] Project6.dpr(1): F1027 Unit not found: 'System.pas' or binary equivalents (.dcu)
Типа не может найти свой собственный файл. Пути вроде все при прописаны.
В Browsing Path имеется строка с $(BDS)\SOURCE\RTL\SYS и там есть этот файл: System.pas
 
В чем борода то?

Всего записей: 123 | Зарегистр. 10-11-2008 | Отправлено: 17:59 13-12-2011
Frodo_Torbins

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AnViSe
Файлы из $(BDS)\SOURCE никогда не используются компилятором, они нужны только при отладке, когда нужно показать исходник дельфевого модуля. Вместо них в компиляции участвуют файлы из $(BDS)\Lib. Вот их и надо проверять.

Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 18:33 13-12-2011 | Исправлено: Frodo_Torbins, 18:34 13-12-2011
Ludens

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AnViSe
возможно, это фигня, связанная с новым неймингом в XE2. Проверь Project/Options/Unit scope names — там должно быть среди прочего слово System или слово Winapi или еще какое-нибудь слово из того же семантического ряда. :) Впиши System, если его там нет, и посмотри, что будет.

Всего записей: 1512 | Зарегистр. 16-01-2006 | Отправлено: 18:56 13-12-2011 | Исправлено: Ludens, 18:58 13-12-2011
mdid

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
народ что то поменялось в синтаксисе dll? у меня был код скомпиленный на D2010 и работал чудесно..начал пробовать его же в хе2 - проблемы..при чем через раз
dll

Код:
 
function GetSect(Path,Section:wideString):TStringList;stdcall;
begin
  result:=TStringList.Create;
  with TIniFile.Create(path) do begin
    ReadSection(Section,result);
    free;
  end;
end;
 

естественно объявлен в exports
 
в программе
 
function GetSect(Path,Section:WideString):TStringList;stdcall;external 'h1095.dll';
 
и вызов  

Код:
 
  l1  :=Tstringlist.Create;
  l1:=GetSect(MainForm.Hint+'\Settings\Files.ini',CategoryDataSet.FieldByName('name').AsString);
 

все входящие переменные верны
 
ошибка
   
 
при всем этом если вести дебаг из dll то ошибки не возникает

Всего записей: 1298 | Зарегистр. 13-02-2006 | Отправлено: 15:14 14-12-2011
0D0A

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mdid
ShareMem в uses есть?
Зачем строка:
l1  :=Tstringlist.Create;
если список создается в длл?

Всего записей: 158 | Зарегистр. 21-09-2009 | Отправлено: 16:50 14-12-2011
zedxxx

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mdid
А разве можно вот так запросто передавать и юзать из dll динамические объекты? Менеджеры памяти то разные.

Всего записей: 1505 | Зарегистр. 14-07-2008 | Отправлено: 16:50 14-12-2011
AnViSe



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Frodo_Torbins
В  $(BDS)\Lib есть каталог win32 с двумя подпапками в которых есть system.dcu
 
Ludens
Есть оно там,  и не только оно...

Всего записей: 123 | Зарегистр. 10-11-2008 | Отправлено: 17:41 14-12-2011 | Исправлено: AnViSe, 17:43 14-12-2011
Frodo_Torbins

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AnViSe
Хз, проверьте хеш образа из которого ставили студию.
 
mdid
Без использования рантайм пакетов передавать классы из проги в длл и обратно нельзя. Только интерфейсы.
 
0D0A
ShareMem тут не поможет, т к передается класс, а для WideString он вообще не нужен.

Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 18:13 14-12-2011
AnViSe



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Frodo_Torbins
Пока не добавил в Tools - Options - Library - Library Path:  
строку
C:\Program Files\Embarcadero\RAD Studio\9.0\lib\win32\release
не пахало.
 
А при вставке строки
C:\Program Files\Embarcadero\RAD Studio\9.0\lib\win32\debug
 вместо указанной выше, начало ругаться на фалы *.res

Всего записей: 123 | Зарегистр. 10-11-2008 | Отправлено: 18:27 14-12-2011
Frodo_Torbins

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AnViSe
Что то у вас слишком уж сильно побиты настройки студии. Я бы ее пожалуй переустановил. Что касается отладочных dcu-шек, то они прописываются в Debug DCU path.

Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 18:38 14-12-2011
mdid

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
там же в той же dll есть

Код:
 
function GetRegSect(key:integer;path:widestring):TStringList;stdcall;
var
  Reg   : TRegistry;
begin
  result:=TStringList.Create;
  Reg := TRegistry.Create;
  Reg.RootKey :=DWORD(key);
  Reg.OpenKey(path, false);
  Reg.GetValueNames(result);
  reg.Free;
end;
 

и чудесно работает...+в 2010 работало+тут через раз работает...бардак какой то
l1  :=Tstringlist.Create;  
добавлял уже в процессе..надо ж было узнать где ошибка...+ непонятно с тем почему все работает если дебагидить из под dll....лан ща попробую вместо TStringList возвращать pointer

Всего записей: 1298 | Зарегистр. 13-02-2006 | Отправлено: 19:00 14-12-2011
Открыть новую тему     Написать ответ в эту тему

Страницы: 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 55 56 57

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Embarcadero RAD Studio XE2 (Pulsar)


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru