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

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

Модерирует : 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 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323

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

V1s1ter



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
         
Обсуждаем новые возможности и баги
 
Просьба писать про Embarcadero RAD Studio XE5, XE6, XE7, XE8, 10.x (Seattle, Berlin,Tokyo)
  По вопросам скачивания - Тема в Варезнике (lite-версии тут)
  Вопросы по неюникодным версиям Delphi — шестая бумага
  Бесплатные Компоненты и утилиты для Delphi/BCB/FreePascal/Lazarus
  Коммерческие компоненты и утилиты для Delphi/BCB
  Вопросы по компонентам для Delphi, C++ Builder разных версий
  Новые языковые возможности, начиная с Delphi 2005 по XE4 — здесь, и New!здесь еще
  Англоязычный официальный форум Embarcadero — здесь
  Embarcadero Quality Central, веб интерфейс — здесь, новый Quality Portal тут
  Программирование на Delphi — викиверситет
  Другие ресурсы
   Предыдущие бумаги
 
     Вопросы ..XE4       Вопросы ..XE3    Вопросы ..XE2      
  Вопросы ..2009-XE    Вопросы ..<2009 / ч.5    Вопросы ..<2009 / ч.4      
  Вопросы ..<2009 / ч.3    Вопросы ..Delphi 2 / ч.2    Вопросы ..Delphi  

  Выключение встроенного эксперта Castalia  для XE8 (иногда помогает при вылетах и тормозах)  
  Полезные плагины(эксперты)

Всего записей: 948 | Зарегистр. 06-02-2007 | Отправлено: 15:25 11-09-2013 | Исправлено: Komandor, 15:49 31-03-2024
sergionn

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

Цитата:
WinRT  

ну эти девайсы были мертворожденными,
сколько майкры спустили на них - 3 лярда,
молодцы, за эти бабки можно и время было оптимизировать-вылизать windows,
до такого состояния, чтобы мы уже имели к сегодняшнему подходу энергоэффективных и мощных x86
систему которая могла бы на них работать - хоть на смартфоне хоть на планшете, хоть на сервере,
ну чо молодцы - и сами пропустили вперед андроид, и теперь видимо уже не догонят,
и мы распалились на кучу платформ

Всего записей: 472 | Зарегистр. 02-11-2011 | Отправлено: 15:35 23-01-2015
xpin2013



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
C FmxTee разобрался - сам дурак - директивы добавил а include файл с директивами не прописал. Но вопрос с Devices и Legend остался. - Они прописаны в проект и когда я среде дельфи говорю - открой этот файл, она открывает мой. А в секцию uses компилятор компилирует другой файл.

Всего записей: 291 | Зарегистр. 16-01-2014 | Отправлено: 15:41 23-01-2015
Sulphide

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Никто не пробовал запустить одновременно 2 юсб веб-камеры на форму? Одна работает ОК... если пускать обе то одна через 10-20 секунд вешается, либо приложение крашится
 
зы юзаю FMX.Media и такое ощущение, что когда наступает SampleBufferReady к моменту переброса буфера в битмап на форме, этот SampleBuffer уже совсем не реди а мне по факту надо будет вообще с 5ти устройств захвата видео в дальнейшем получать, правда не вебок, а карт видеозахвата.

Всего записей: 277 | Зарегистр. 20-03-2008 | Отправлено: 16:08 23-01-2015
AlekXL



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
вопрос
интересут Spring подобная реализация для классической Delphi(2007)
то есть:
У меня есть ISome, и класс TSome, реализующий его
в начале программы я регистрирую интерфейс ISome вместе с виртуальным к-тором TSome,
 
 а где-то потом по запросу, ISome, получаю этот к-тор
нашлось

Всего записей: 792 | Зарегистр. 24-04-2008 | Отправлено: 23:42 23-01-2015 | Исправлено: AlekXL, 15:50 24-01-2015
SuPriTo



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

Код:
 
type
  EnumName = class(TCustomAttribute)
  private
    FName : String;
  public
    constructor Create(AName : String); overload;
    property Name : String read FName;
  end;
 
 
  TMyEnum =
    (
      [EnumName('Первый')]
      First,
      [EnumName('Второй')]
      Second,
      [EnumName('Третий')]
      Third
    );
 

 
Можно ли получить атрибуты элементов типа TMyEnum?

Всего записей: 1475 | Зарегистр. 24-03-2009 | Отправлено: 23:17 28-01-2015
kaz_av

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

Цитата:
Можно ли получить атрибуты элементов типа TMyEnum?

Судя по TypInfo.TTypeData нельзя.

Всего записей: 439 | Зарегистр. 15-02-2006 | Отправлено: 00:36 29-01-2015
xpin2013



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
SuPriTo
Атрибуты сохраняются где-то отдельно от TTypeData. На эту тему лучше всего смотреть папку
\All Users\Документы\RAD Studio\12.0\Samples\Delphi\RTL\AttributesAndRTTI\rtti_browser
 
 
Добавлено:
>program attribute_listing;
...
>attrList: TArray<TCustomAttribute>;
>attrList := AObj.GetAttributes;

Всего записей: 291 | Зарегистр. 16-01-2014 | Отправлено: 12:45 29-01-2015
SuPriTo



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
xpin2013
Получить атрибуты по RTTI информации можно легко. Вопрос, как получить атрибуты у элементов перечисления (enum)? и возможно ли такое?

Всего записей: 1475 | Зарегистр. 24-03-2009 | Отправлено: 13:38 29-01-2015
kaz_av

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
SuPriTo
Нельзя получить атрибуты для элементов перечислимого типа. Все данные об атрибутах хранятся именно в TTypeData. Вот код перечисления атрибутов для перечислимого типа:
Подробнее...

Всего записей: 439 | Зарегистр. 15-02-2006 | Отправлено: 15:44 29-01-2015 | Исправлено: kaz_av, 15:52 29-01-2015
xpin2013



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

Цитата:
как получить атрибуты у элементов перечисления (enum)?

[del]
Я пока не копал - это просто моё видение. Не знаю чем помочь - декларации заимствованные из сишарпа "типо красивые", но абсолютно бессмысленные в ранних версиях Delphi, где это же самое реализовывалось просто другим набором букв, на том же объёме листочка редактора кода.
 
 
 
 
Добавлено:
О. Уже сделалии
 
Добавлено:
У меня тоже вопрос. Что-то похоже туплю, но проверить легко, а корректно ли использование экзепшенов которое я хочу, может что-то неправильно. Пример\

Код:
try
        spPROC1.ExecProc;
except on E: EFIBError do
        begin
          ds.FieldByName('field1').AsCurrency:=0;
               try
                  //на случай если вводили не с нуля
                  ExecSQL('delete where id='+id);
               except
               end
          raise;
        end;
end;

Вообще нормально ли рассчитывать, что raise; подымет именно свой экзепшен, а не другой, например в случае если отвалился коннект? Правильно ли строить алгоритм таким образом, так как деваться не куда - хочется именно так - не полагаясь на то что там прилетит видеть то исключение которое в первом ExecProc.

Всего записей: 291 | Зарегистр. 16-01-2014 | Отправлено: 16:09 29-01-2015 | Исправлено: xpin2013, 16:26 29-01-2015
SuPriTo



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kaz_av
Да, спасибо. Я вас понял.
xpin2013

Цитата:
У меня тоже вопрос.

Можно так использовать. Но я обычно так не делаю, т. к. может отвалиться Exception.

Всего записей: 1475 | Зарегистр. 24-03-2009 | Отправлено: 16:32 29-01-2015
DeathMAD

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

Всего записей: 114 | Зарегистр. 13-10-2004 | Отправлено: 23:16 29-01-2015
xpin2013



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

Цитата:
Курите RaiseOuterException

Что-то я вкурил, но ничего не понял, слишком умно это. У меня всё проще и тривиальнее, не хочу в дебри. Дело в том, что это касается только моих подозрений. В программе общий блок на весь BeforePost выводит сообщение о любой ошибке. Но получается ситуация - клиент датасет изменил данные, датасет базы не смог и вывалил ошибку. Мы совершенно логично показали окно  с непонятными надписями на английском. Пользователь испугался, справился с испугом, нажал окей, и стал работать дальше. Но вот в этот момент данные клиентдатасета и базы разошлись. Когда пользователь завершил набирать данные, программа уже не смогла сделать ему что он хочет, так как данные разошлись. И вот тут то уже клиент начинает звонить нам, так как уже встрял на деньги. Про то что он мог сделать первый скриншот речи вообще нет. Так как я не фанат блуждать в подозрениях, я считаю что не нормально - мы ошибку показали, отловили, но сделать жизнь лучше - не смогли. Просто сбросить циферку это не очень страшно. А вот попытаться сбросить ещё и в базе, если там что-то было, сделать простую попытку сделать жизнь чуть лучше, без заморочек - что там за внутренние исключения. Да их 2 всего исключения может быть - отвалился коннект или залочена запись. Вероятность залоченности 0.00000001%. Если произошол дисконнект, то уже вообще ничего не поможет. Так что какие там стеки меня мало волнует.
 
Я просто вкурил за идеологию, статья интересная, особо как сейчас надо прикручивать JclStackLog ко вложенным экепшенам. Но мне не до художеств. Я засомневался так как переменная ExceptObject вроде была одна и где-то то ли депрекатед то ли унсафе то ли платформ. Сейчас она функция от списка исключений, так что вроде должно работать как надо. Пишут что можно так делать.

Цитата:
Можно так использовать. Но я обычно так не делаю, т. к. может отвалиться Exception.

Я обычно тоже так не делаю - случай просто редчайший.

Всего записей: 291 | Зарегистр. 16-01-2014 | Отправлено: 10:46 30-01-2015
SuPriTo



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

Цитата:
Я обычно тоже так не делаю - случай просто редчайший.  

Может быть транзакции в таком случае прикрутить.

Всего записей: 1475 | Зарегистр. 24-03-2009 | Отправлено: 11:18 30-01-2015
xpin2013



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

Цитата:
Может быть транзакции в таком случае прикрутить.

Какая транзакция? 2 разных датасета - клиентдатасет и датасет базы. У них данные могут разойтись. Между клиентдатасетом и датасетом базы единую транзакцию?

Всего записей: 291 | Зарегистр. 16-01-2014 | Отправлено: 01:26 01-02-2015
SuPriTo



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

Цитата:
2 разных датасета - клиентдатасет и датасет базы

Я как вариант предлагал. Тогда надо разбираться с логикой программы, чтобы что-то посоветовать.

Всего записей: 1475 | Зарегистр. 24-03-2009 | Отправлено: 13:35 01-02-2015
AlekXL



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
предположим, существуют два интерфейса, и их реализация

Код:
 
    IBase=interface
      ['{664547B3-F4CD-4BCD-B742-687D69204B73}']
 
    end;
    IDerived=interface(IBase)
      ['{B6D69E3D-40B3-4945-B20B-7B9DF8B71D91}']
 
    end;
 
TmyClass=class(TInterfacedObject, IDerived)
end;
 

 
поскольку в таблице интерфейсов класса TmyClass нет IBase, то QueryInterface(IBase,..), выполненный на экзепляре IDerived, завершиться неудачей.
 
Можно ли как-то этой обойти, не указывая явно IBase в списке поддерживаемых интерфейсов в TmyClass? Например, посредством RTTI, установить эквивалентность IDerived->IBase?
Насколько велик оверхед при добавлении подобного базового интерфейса в список поддерживаемых?

Всего записей: 792 | Зарегистр. 24-04-2008 | Отправлено: 09:01 02-02-2015
SuPriTo



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

Всего записей: 1475 | Зарегистр. 24-03-2009 | Отправлено: 12:10 02-02-2015
Samotek

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ребята! Подскажите, пожалуйста. Стояла XE6. Поставил XE7 UPD1. Все нормально. Снес XE6 с его хелпом - пропал хелп на XE7. Снес хелп, установил по новой - не работает. Как его снова заставить работать с XE7 не переустанавливая XE7?. (win 8.1)

Всего записей: 2446 | Зарегистр. 18-05-2005 | Отправлено: 12:42 02-02-2015
SuPriTo



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Samotek
Вероятно только таким способом.
_http://www.sql.ru/forum/1113123/delphi-xe6-registraciya-storonney-spravki-v-ide

Всего записей: 1475 | Зарегистр. 24-03-2009 | Отправлено: 13:20 02-02-2015
Открыть новую тему     Написать ответ в эту тему

Страницы: 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 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323

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


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru