с иконками уж сам разобрался) отбой
» Вопросы по Delphi (версии 2009, 2010 Weaver, 2011 Fulcrum)
А нельзя ли изменять размеры фонтов в IDE? Или только в редакторе можно менять?
vez
Цитата:
Для создаваемой формы ? (В реестре можно переназначить или создать свой пакет устанавливающий для форм по умолчанию нужный шрифт и раскладку)
Цитата:
размеры фонтов в IDE
Для создаваемой формы ? (В реестре можно переназначить или создать свой пакет устанавливающий для форм по умолчанию нужный шрифт и раскладку)
Цитата:
Цитата:
размеры фонтов в IDE
Для создаваемой формы ? (В реестре можно переназначить или создать свой пакет устанавливающий для форм по умолчанию нужный шрифт и раскладку)
Нет, я имел ввиду сам IDE, очень маленькие буквы в табах, инспекторе объектов и т.д.
У меня разрешение экрана 2560х1600, отсюда проблемы.
Таже проблема, что и у vez
Цитата:
Может действительно есть штатное решение для IDE, поставить масштабирование или 150 DPI в шрифтах Windows прошу не предлагать.
Цитата:
очень маленькие буквы в табах, инспекторе объектов и т.д.
У меня разрешение экрана 2560х1600, отсюда проблемы.
Может действительно есть штатное решение для IDE, поставить масштабирование или 150 DPI в шрифтах Windows прошу не предлагать.
Драсте
нужно отлавливать все эксепшны при запросах через ADO..дабы не помещать каждый запрос в try..except положил на форму ApplicationEvents и все эксепшны обрабатываю там...так вот при исключениях функция
GetLastError возвращает 0
EOleException(e).ErrorCode - нижний предел типа integer тоесть -21... и тд(не помню)
EOleException(e).Message - выводит саму ошибку (текст)
Так вот мне нужно получать только коды исключений...как их получить?
в общем себе же и отвечу..
в общем в ADOConnection есть событие ExecuteComplete и код ошибки можно получить через Error.NativeError
нужно отлавливать все эксепшны при запросах через ADO..дабы не помещать каждый запрос в try..except положил на форму ApplicationEvents и все эксепшны обрабатываю там...так вот при исключениях функция
GetLastError возвращает 0
EOleException(e).ErrorCode - нижний предел типа integer тоесть -21... и тд(не помню)
EOleException(e).Message - выводит саму ошибку (текст)
Так вот мне нужно получать только коды исключений...как их получить?
в общем себе же и отвечу..
в общем в ADOConnection есть событие ExecuteComplete и код ошибки можно получить через Error.NativeError
Господа
Большое спасибо за 2010. Наконец то довелось увидеть, что исправлен менеджер акций. Меню теперь может быть более глубоким, чем это было раньше. Возможно найдутся люди которые скажут: "так себе новость". Для меня это самый крупный баг, который был исправлен за мою жизнь, с чем и поздравляю...
Большое спасибо за 2010. Наконец то довелось увидеть, что исправлен менеджер акций. Меню теперь может быть более глубоким, чем это было раньше. Возможно найдутся люди которые скажут: "так себе новость". Для меня это самый крупный баг, который был исправлен за мою жизнь, с чем и поздравляю...
V1s1ter
С помощью небольшого хака можно установить DPI для отдельной проги. Кстати Аэро умеет сам масштабировать окна, без изменения DPI.
С помощью небольшого хака можно установить DPI для отдельной проги. Кстати Аэро умеет сам масштабировать окна, без изменения DPI.
ПЛИЗ, помогите кто-нибудь с этим --> http://forum.ru-board.com/topic.cgi?forum=33&topic=8529&start=2260#9
relictus
Цитата:
Нюх у тебя хороший Действительно надо юзать IOHandler примерно [more=ТАК]
Код: procedure TMainForm.IdTCPServerExecute(AContext: TIdContext);
var s: string;
begin
// уже не помню, может эта строка и не нада, но у меня в проге она есть:
AContext.Connection.IOHandler.Host:= AContext.Connection.Socket.Binding.PeerIP;
// а дальше так:
// если в порт посылалась строка:
s:= AContext.Connection.IOHandler.ReadLn;
// если буфер данных:
AContext.Connection.IOHandler.ReadBytes(...);
// короче, посмотри, там еще есть методы ReadChar, ReadString, ReadCardinal и ряд других...
end;
Цитата:
Порт задал, сделал Active, а в IdTCPServer1Execute пытался ловить пакет... Чую, что не так, вероятно надо еще юзать cв-ва IOHandler/Scheduler/Bindings?
Нюх у тебя хороший Действительно надо юзать IOHandler примерно [more=ТАК]
Код: procedure TMainForm.IdTCPServerExecute(AContext: TIdContext);
var s: string;
begin
// уже не помню, может эта строка и не нада, но у меня в проге она есть:
AContext.Connection.IOHandler.Host:= AContext.Connection.Socket.Binding.PeerIP;
// а дальше так:
// если в порт посылалась строка:
s:= AContext.Connection.IOHandler.ReadLn;
// если буфер данных:
AContext.Connection.IOHandler.ReadBytes(...);
// короче, посмотри, там еще есть методы ReadChar, ReadString, ReadCardinal и ряд других...
end;
доброго времени суток.
Прошу помочь с решением небольшой проблемы.
Написана программа в Delphi 2010 для работы с базой данных access 2007.
Но есть проблема в том, что программа не может подключиться к файлу БД, если в системе не установлен Office 2007(сам access не требуется, достаточно общих компонентов).
ошибка следующая: "Не удается найти указанный поставщик. Вероятно, он установлен неправильно."
Помогите решить эту проблему. Возможно достаточно таскать с собой какие-нибудь библиотеки. или установить какой-нибудь небольшой пакет в систему.
PS: пробовал MDAC устанавливать - не помогло.
Прошу помочь с решением небольшой проблемы.
Написана программа в Delphi 2010 для работы с базой данных access 2007.
Но есть проблема в том, что программа не может подключиться к файлу БД, если в системе не установлен Office 2007(сам access не требуется, достаточно общих компонентов).
ошибка следующая: "Не удается найти указанный поставщик. Вероятно, он установлен неправильно."
Помогите решить эту проблему. Возможно достаточно таскать с собой какие-нибудь библиотеки. или установить какой-нибудь небольшой пакет в систему.
PS: пробовал MDAC устанавливать - не помогло.
psa1974
Данные - raw data, размер известен.
А какой IOHandler цеплять к серверу? Их там несколько видов
Данные - raw data, размер известен.
А какой IOHandler цеплять к серверу? Их там несколько видов
relictus
Я никакой IOHandler не цеплял. Если посмотреть метод TIdCustomTCPServer.Startup, который вызывается при установке свойства Active:= true, то видно, что в случае, когда свойтсву IOHandler ничего не назначено, создается внутренний экземпляр класса TIdServerIOHandlerStack. И у меня при этом все работает замечательно.
Я никакой IOHandler не цеплял. Если посмотреть метод TIdCustomTCPServer.Startup, который вызывается при установке свойства Active:= true, то видно, что в случае, когда свойтсву IOHandler ничего не назначено, создается внутренний экземпляр класса TIdServerIOHandlerStack. И у меня при этом все работает замечательно.
psa1974
Ага, уже попробовал без ИОхэндлера - работает Вот только все контролы на форме после получения пакета фризяться Что-то еще надо прикрутить?
Ага, уже попробовал без ИОхэндлера - работает Вот только все контролы на форме после получения пакета фризяться Что-то еще надо прикрутить?
Предскажите литературу для проектирования больших приложений, применительно к Delphi. Магических кнопок у меня почти нет, все на функциях процедурах. А вот до классов еще не дорос.
relictus
Цитата:
Видать у тебя размер пакетов большой.
Это особенность библиотеки Инди - она работает синхронно, т.е. в основном потоке.
Вариантов два:
1. собственно прием пакета выделить в отдельный поток.
2. Сделать как я у себя сделал: моя прога принимает файлы, передаваемые клиентом (эта же самая прога, другой экземпляр ). Дык вот я файлы передаю и принимаю файлы не одним пакетом (представь, что файл весит, например, 100 МБ) а блоками по 32768 байт, в итоге есть возможность в цикле вставлять Аппликатион.ПроцессМессажес... И все дышит...
Вероятно есть еще какой-то вариант, но я не в курсе...
Цитата:
Вот только все контролы на форме после получения пакета фризяться
Видать у тебя размер пакетов большой.
Это особенность библиотеки Инди - она работает синхронно, т.е. в основном потоке.
Вариантов два:
1. собственно прием пакета выделить в отдельный поток.
2. Сделать как я у себя сделал: моя прога принимает файлы, передаваемые клиентом (эта же самая прога, другой экземпляр ). Дык вот я файлы передаю и принимаю файлы не одним пакетом (представь, что файл весит, например, 100 МБ) а блоками по 32768 байт, в итоге есть возможность в цикле вставлять Аппликатион.ПроцессМессажес... И все дышит...
Вероятно есть еще какой-то вариант, но я не в курсе...
psa1974
Цитата:
360 байт
Нашел демку с асинхронным сервером, но там на 9-й инде, а в 10-ке таких компонет не нашел (пока)
Цитата:
Видать у тебя размер пакетов большой.
360 байт
Нашел демку с асинхронным сервером, но там на 9-й инде, а в 10-ке таких компонет не нашел (пока)
relictus
Цитата:
Тогда странно... копеечный размер... У меня такого не наблюдалось... если покажешь, как делал, может чего и прояснится...
Цитата:
360 байт
Тогда странно... копеечный размер... У меня такого не наблюдалось... если покажешь, как делал, может чего и прояснится...
psa1974
Цитата:
См. личку.
Цитата:
если покажешь
См. личку.
Как в ран-тайме массово подменить класс в форме или датамодуле?
Например, я описал класс:
Код: type
TmyStringField = class(TStringField)
...
end;
Например, я описал класс:
Код: type
TmyStringField = class(TStringField)
...
end;
Andrey128
класс -это абстракция ... подменять можно обьект (экземпляр класса), но как на меня - не нужно... т.к. сильно чревато ...
Откуда вообще ноги у такой задачи растут ?
Проще было бы в момент создания подменять конструктор класса ...
класс -это абстракция ... подменять можно обьект (экземпляр класса), но как на меня - не нужно... т.к. сильно чревато ...
Откуда вообще ноги у такой задачи растут ?
Проще было бы в момент создания подменять конструктор класса ...
VadimLou
Цитата:
Есть работающий проект IBX + Interbase.
Понадобилось возможность вводить ФИО и название улиц как на русском, так и на казахском языках. Сколько я не бился, у меня не получилось корректно хранить и выводить одновременно русские и казахские символы. По этой проблеме я спрашивал здесь.
И решил пойти другим путем, хранить в БД символы казахского языка в кодировке 1251, а при показе декодировать в Unicode. Этот механизм уже полгода как работает. Единственное неудобство, так это необходимо помнить, что при добавлении DataSet нужно не забывать в соответсвующих полях подменять объект TIBStringField на TmyStringField, описанным в предыдущем моём сообщении способом.
Сейчас нашел другое решение, я не подменяю объекты, а ставлю хук на методы TIBStringField.GetAsString и TIBXSQLVAR.GetAsString и там уже декодирую символы.
В идеале нужно переписать на FIB + Firebird - в этой связке Unicode поддерживается как надо, но проект слишком огромный.
Возможно слишком много и сумбурно написал, сорри.
Цитата:
Откуда вообще ноги у такой задачи растут ?
Есть работающий проект IBX + Interbase.
Понадобилось возможность вводить ФИО и название улиц как на русском, так и на казахском языках. Сколько я не бился, у меня не получилось корректно хранить и выводить одновременно русские и казахские символы. По этой проблеме я спрашивал здесь.
И решил пойти другим путем, хранить в БД символы казахского языка в кодировке 1251, а при показе декодировать в Unicode. Этот механизм уже полгода как работает. Единственное неудобство, так это необходимо помнить, что при добавлении DataSet нужно не забывать в соответсвующих полях подменять объект TIBStringField на TmyStringField, описанным в предыдущем моём сообщении способом.
Сейчас нашел другое решение, я не подменяю объекты, а ставлю хук на методы TIBStringField.GetAsString и TIBXSQLVAR.GetAsString и там уже декодирую символы.
В идеале нужно переписать на FIB + Firebird - в этой связке Unicode поддерживается как надо, но проект слишком огромный.
Возможно слишком много и сумбурно написал, сорри.
Кстати, может, имеет смысл внести в список выявленных багов D2010 и вот этот, связанный с обрезанием dfm-ок с кириллицей?
Установил Delphi 2010 c нуля, появилась такая проблема с инди: если кинуть на форму idHTTP и попытаться скомпилировать, делфи ругается на ошибку в файлике IdCookieManager.pas:
[DCC Error] IdCookieManager.pas(118): E2010 Incompatible types: 'TIdCookieList' and 'TIdCookieDomainList'
[DCC Error] IdCookieManager.pas(172): E2003 Undeclared identifier: 'IsValidCookie'
[DCC Error] IdCookieManager.pas(236): E2010 Incompatible types: 'TIdCookieList' and 'TIdCookieDomainList'
[DCC Fatal Error] Unit4.pas(7): F2063 Could not compile used unit 'IdCookieManager.pas'
С чем может быть связано?
[DCC Error] IdCookieManager.pas(118): E2010 Incompatible types: 'TIdCookieList' and 'TIdCookieDomainList'
[DCC Error] IdCookieManager.pas(172): E2003 Undeclared identifier: 'IsValidCookie'
[DCC Error] IdCookieManager.pas(236): E2010 Incompatible types: 'TIdCookieList' and 'TIdCookieDomainList'
[DCC Fatal Error] Unit4.pas(7): F2063 Could not compile used unit 'IdCookieManager.pas'
С чем может быть связано?
С тем, что Indy - это один большой глюк. А также с тем, что в релизах дельфи поставляются не то чтобы бета, а даже альфа версии Indy. Если есть возможность, то сразу переходи на ICS. Со временем всё равно переедешь на ICS. И здесь пословица "Лучше позже, чем никогда" не уместна. Тогда уж лучше никогда.
Indy - лучшая реклама ICS (с).
Indy - лучшая реклама ICS (с).
yegorovpavel
решается простым обновлением Indy.
X11
ICS далеко не панацея. Там багов тоже хватает, а количество компонентов вообще как кот наплакал.
Оптимальный вариант исправленные компоненты Indy которые необходимы для работы. (это мое личное мнение, тоже не панацея)
решается простым обновлением Indy.
X11
ICS далеко не панацея. Там багов тоже хватает, а количество компонентов вообще как кот наплакал.
Оптимальный вариант исправленные компоненты Indy которые необходимы для работы. (это мое личное мнение, тоже не панацея)
Цитата:
yegorovpavel
решается простым обновлением Indy.
Где опять же баги , да и не факт, что ещё и установить получится.
Цитата:
ICS далеко не панацея.
Может не далеко, но реальная панацея.
Не, ну я все понимаю, но чтобы не работало "из коробки", это как-то слишком =)
На ICS-то уже перешел, даж открыточку аффтару когда-то отправлял
На ICS-то уже перешел, даж открыточку аффтару когда-то отправлял
X11
где у панацеи HTTP server? SMTP Relay демка вообще многими антивирями трояном считается. ДНС сервер на 2003-м или 2008-м Windows будет работать не скоро. Панацеей это не является. Это просто другой продукт с меньшим функционалам, ну и как следствие с меньшим числом ошибок.
где у панацеи HTTP server? SMTP Relay демка вообще многими антивирями трояном считается. ДНС сервер на 2003-м или 2008-м Windows будет работать не скоро. Панацеей это не является. Это просто другой продукт с меньшим функционалам, ну и как следствие с меньшим числом ошибок.
Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
Предыдущая тема: Установка копоненты ZipTV
Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.