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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Delphi (версии 2009, 2010 Weaver, 2011 Fulcrum)

Модерирует : 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

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

data man



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Обсуждаем новые возможности и баги
Просьба писать только про Delphi 2009 и выше - по остальным версиям есть соответствующая тема.
Вопросы вареза здесь не обсуждаются !!!
См. также:
Известные важные баги Delphi 2010:

Описание________________________________________________ Исправлено Решение/Альтернатива_____________________
  1. Внимание !  Деинсталляция D2010 нарушает работу D2007 и D2009 !  
При деинсталляции удаляются CC3280MT.DLL и CC3290MT.DLL из Windows\System32,   необходимые для работы D2007 и D2009 соответственно.
Сделайте резервные копии
  2. Code Formatter не работает, если не инсталлирован пакет моделирования.   В нем также присутствует множество багов. Используйте с осторожностью.   1.   JEDI CodeFormat 2.44 SVN Snapshot (~750Kb)   Требуются JCL и JVCL  
2.GExperts with Formatter
  3. Не работает F1 в Object Inspector Update 2   IDEFixPack 2.9 от Andreas Hausladen
(dev. snapshots)
  4. Если IDE начинает падать с сообщением "Out of resources", возможно, что поврежден .res файл проекта. Удалить его, запустить IDE, открыть проект - новый .res файл будет создан автоматически.
  5. В редакторе не работает Class Completion, если в декларируемом классе есть поля с шаблонами. Перед декларированием поля добавить public или private и т.д.
  6. TTrayIcon.ShowBalloonHint() не работает на ОС ниже Vista [QC 77561] Update 2 * Установить Update 2   * ИЛИ почитать о причинах и решении проблемы на форуме embarcadero и в QC   * ИЛИ воспользоваться альтернативой, например Cooltray 4.4.0
  ...      


Всего записей: 1696 | Зарегистр. 13-10-2005 | Отправлено: 14:28 26-08-2009 | Исправлено: data man, 18:27 06-08-2010
spasius



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
упомянутый
Цитата:
Automated Docking Library
почти 1 в 1 выплывает в LMD DockPack. В последней версии он точно есть.

Всего записей: 695 | Зарегистр. 16-03-2009 | Отправлено: 05:06 17-03-2011
Ludens

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

Цитата:
Дык это и есть собстенное рисование... - то что тебе не нравится...  

Да, верно, я и сам потом заметил. Но в первый момент на демке мне показалось, что там стандартные окошки.

Цитата:
можно, причем несколькими способами

Это я тоже уже понял.

Цитата:
бери нормальный компонент QA

Не смог его найти нигде. Зато проникся к ToolBar2000. Он оказался прекрасен. Все проблемы решены, спасибо.

Всего записей: 1512 | Зарегистр. 16-01-2006 | Отправлено: 15:02 17-03-2011
Ruslang



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Перехожу с 2006 на 2010.
Если в 2006 нажать Ctrl+F, то выдается окно поиска, где есть вкладка Искать по всех файлах. А если нажать Ctrl+F в 2010, то появляется внизу возможность указать искомую фразу, но нет возможности искать по всем файлам проекта. Подскажите, может где дополнительные настройки есть для этого?

Всего записей: 545 | Зарегистр. 14-04-2006 | Отправлено: 15:08 17-03-2011
psa1974



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

Цитата:
А если нажать Ctrl+F в 2010, то появляется внизу возможность указать искомую фразу, но нет возможности искать по всем файлам проекта.  

Вызов диалога поиска в файлах в Дельфи в 2010:
Ctrl+Shift+F или меню "Serch" -> "Find in Files"...

----------
У программёра есть два состояния: "Втупляю" и "Попёрло"...

Всего записей: 438 | Зарегистр. 08-11-2005 | Отправлено: 16:58 17-03-2011
Ruslang



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
psa1974 понял, спасибо.
Еще с такой проблемой столкнулся - открываю свой проект, запускаю его, а основное окно студии становится одним сплошным серым полотном. Приходится сворачивать окно студии и разворачивать, тогда все восстанавливается. Как с этим бороться?

Всего записей: 545 | Зарегистр. 14-04-2006 | Отправлено: 09:45 18-03-2011
ppkp

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ruslang
Tools->Options->Check 'Minimize on run' box

Всего записей: 480 | Зарегистр. 13-04-2006 | Отправлено: 14:38 18-03-2011
data man



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

Цитата:
Зато проникся к ToolBar2000. Он оказался прекрасен.

О, не то слово ! А с SpTBXLib он становится почти совершенством.
Релиз версии 2.4.5, правда, был больше года назад, но в SVN файлы новее, рекомендую. (svn.exe co svn://www.soft-gems.net/mustangpeak/SpTBXLib)

----------
Любой достаточно развитый тролль неотличим от подлинно помешанного на какой-либо идее.
Кекс. Антибиотики. Ламбада.

Всего записей: 1696 | Зарегистр. 13-10-2005 | Отправлено: 01:19 20-03-2011 | Исправлено: data man, 01:27 20-03-2011
Ludens

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

Цитата:
А с SpTBXLib он становится почти совершенством.

Да! Да!! Да!!! Абсолютно.
Я уже третий день вообще не понимаю, как я жил все эти годы без Toolbar2000 + SpTBXLib. И почему никто не надоумил, не подсказал? Почему до сих пор нет сайта фанатов этой гениальной разработки? Почему на руборде даже нет отдельной темы? Мне кажется, что те, кто, вроде меня, волей случая оказался посвящен в существование Toolbar2000 & SpTBXLib, просто скрывают это сокровенное знание от коллег, чтоб не сглазить. ;)

Цитата:
Релиз версии 2.4.5, правда, был больше года назад

А вот это, действительно, крайне прискорбно. Но я не верю, отказываюсь верить, что эти люди посмеют прекратить развитие такого проекта.

Цитата:
в SVN файлы новее, рекомендую

К сожалению, ссылка на SVN с офсайта не работает. :(
Если у тебя есть какие-то более свежие файлы — не сочти за труд, поделись.

Всего записей: 1512 | Зарегистр. 16-01-2006 | Отправлено: 01:48 20-03-2011
data man



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

Цитата:
ссылка на SVN с офсайта не работает.

Извиняюсь, забыл, что браузером давно не просматривается. Зато svn checkout отлично работает, только что проверил.
Я, кстати, забираю весь MustangPeak svn checkout svn://www.soft-gems.net/MustangPeak "Delphi\MustangPeak"
Там ещё отличный EasyListView и VirtualShellTools2.0 и др. вкусности.

----------
Любой достаточно развитый тролль неотличим от подлинно помешанного на какой-либо идее.
Кекс. Антибиотики. Ламбада.

Всего записей: 1696 | Зарегистр. 13-10-2005 | Отправлено: 01:57 20-03-2011 | Исправлено: data man, 02:01 20-03-2011
V1s1ter



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

Цитата:
Почему до сих пор нет сайта фанатов этой гениальной разработки? Почему на руборде даже нет отдельной темы?

Потому, что никто не покупал -  народ и забросил. А компонент очень даже исвестный. И нга руборде он отмечен http://forum.ru-board.com/topic.cgi?forum=33&topic=10740
Вы пройдитесь по http://www.torry.net/ может еще чего спрятанного откопаете

Всего записей: 948 | Зарегистр. 06-02-2007 | Отправлено: 02:09 20-03-2011
Ludens

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

Цитата:
Зато svn checkout отлично работает

Скачал этим странным клиентом все, что смог найти. Действительно, есть несколько файлов, относящихся к SpTBXLib, которые на полгода свежее (сентябрь 2010) и чуть больше размером. В чем отличия — пока не въехал.

Всего записей: 1512 | Зарегистр. 16-01-2006 | Отправлено: 03:53 20-03-2011
HeMet

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Здравствуйте. Функция читает из файла (скомпилированный скрипт асмоподобного языка) строку.
 

Код:
 
function ExtractLabel(Stream: TStream): String;
var
  str_buf: array of AnsiChar;
  str_len: Cardinal;
  ansi_str: AnsiString;
begin
  Stream.Read(str_len, SizeOf(str_len));
  SetLength(str_buf, str_len);
  // полученный массив: последовательность ANSI-символов, последний символ #0
  Stream.Read(str_buf[0], str_len);
  ansi_str := AnsiString(str_buf);
  Result := ansi_str; // всегда получаем пустую строку
end;

 
Результат функции всегда пустая строка. Данные теряются при преобразовании ANSI строки в юникод.
 
А вот вариант с массивом фиксированной длины работает прекрасно.

Код:
 
function ExtractLabel(Stream: TStream): String;
var
  str_buf: array[0..$FFFF] of AnsiChar;
  str_len: Cardinal;
  ansi_str: AnsiString;
begin
  Stream.Read(str_len, SizeOf(str_len));
  Stream.Read(str_buf[0], str_len);
  ansi_str := AnsiString(str_buf);
  Result := ansi_str;
end;

 
В чём может быть проблема? Использую Delphi XE.

Всего записей: 212 | Зарегистр. 05-09-2007 | Отправлено: 11:09 20-03-2011 | Исправлено: HeMet, 11:09 20-03-2011
Frodo_Torbins

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
HeMet
Попробуйте прямо в ansi_str и читать, она от массива в этом плане ничем не отличается.

Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 12:10 20-03-2011
HeMet

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Frodo_Torbins
Спасибо, этот вариант работает. Почему-то не подумал сразу использовать ansi-стоку в качестве буфера. Только вот поведение динамического массива в таких ситуациях мне по-прежнему не понятно. Почему на приведении типа (ansi -> юникод) теряются данные?

Всего записей: 212 | Зарегистр. 05-09-2007 | Отправлено: 16:43 20-03-2011
Frodo_Torbins

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
HeMet
Смотря что за данные. Вдруг у вас первым байтом #0 затесался?
Без конкретной демки гадать можно долго.

Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 17:03 20-03-2011 | Исправлено: Frodo_Torbins, 17:05 20-03-2011
Eternal_Shield

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
HeMet
Frodo_Torbins
А чего там гадать то? Взятие указателя от статического и динамического массива без индекса даёт разный результат. В первом случае (статика) будет указатель на первый эл-т массива, во втором случае указатель будет указывать на служебные данные. Это основы основ. Без обид.
 
Поэтому правильный вариант выглядит так:

Код:
 
function ExtractLabel(Stream: TStream): String;  
 var  
   str_buf: array of AnsiChar;  
   str_len: Cardinal;  
   ansi_str: AnsiString;  
 begin  
   Stream.Read(str_len, SizeOf(str_len));  
   SetLength(str_buf, str_len);  
   Stream.Read(str_buf[0], str_len);  
   ansi_str := PAnsiChar(@str_buf[0]);  
   Result := ansi_str;
 end;
 

Всего записей: 766 | Зарегистр. 18-05-2009 | Отправлено: 21:03 22-03-2011 | Исправлено: Eternal_Shield, 21:09 22-03-2011
Frodo_Torbins

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Eternal_Shield
Да, точно. В случае с Stream.Read я это проверил, а с приведением типов не заметил.
В любом случае массив тут лишний, одной строки достаточно.

Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 21:43 22-03-2011 | Исправлено: Frodo_Torbins, 21:44 22-03-2011
Ludens

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вопрос по встроенному редактору. В нем все фичи автоматизации ввода кода представляются мне полезными и как минимум не мешают. Кроме одной. При вводе цикла for... to... появляется заготовка из трех синеньких рамочек, пользу которой я так и не сумел осознать. Поэтому при ее появлении всякий раз мне приходится жать кнопку Esc. Это уже дошло до автоматизма. Я пытался отключить данную фичу в Options, но она почему-то отключается только вместе с другими фичами автоматизации ввода, которые мне отключать не хочется. Может, кто-то знает, как отключить только её?

Всего записей: 1512 | Зарегистр. 16-01-2006 | Отправлено: 02:29 23-03-2011
V1s1ter



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ludens
Ну Esc жать не обязательно, рамочки можнот просто игнорировать. Если находится в рамочке и нажать Enter то переменная, та что в рамочке пропишится в секции var.
 
Добавлено:
Да, простите, что не ответил прямо на вопрос.

Всего записей: 948 | Зарегистр. 06-02-2007 | Отправлено: 03:16 23-03-2011
Eternal_Shield

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ludens
Надо в View -> Templates -> Delphi удалить все шаблоны для for'a и перезапустить студию. Так же, можете свои шаблончики сделать, можно довольно интересных результатов добиться
 
Frodo_Torbins

Цитата:
В любом случае массив тут лишний, одной строки достаточно.

Однозначно

Всего записей: 766 | Зарегистр. 18-05-2009 | Отправлено: 09:33 23-03-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 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

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Delphi (версии 2009, 2010 Weaver, 2011 Fulcrum)


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru