Вопрос № 83174: Всем привет!!! Помогите начинающему в работе с БД.
Проблема стоит в том, что созданная таблица DBGrid1 при помощи База Данных мастера форм, должна дополняться новыми данными с dbf файлов, которые загружаются при помощи кнопки button, а я не знаю...Вопрос № 83190: Доброго времени суток уважаемые! Сегодня состоялось мое первое знакомство с FastReport 3.24. У меня n-ное кол-во проектов использующих версию <b>2.47</b>. Естественно они перестали работать, а переделывать надо. Как быть? Некоторые отчеты довольно
сл...Вопрос № 83192: Здраствуйте экперты.
Мне нужно создать в Delphi 6, 2 приложения:
1)Сервер, cgi приложение(или другое, если возможно), исполняеться на вэб сайте.
2)Клиент, исполняеться на компьютере пользователя
Мне нужно что бы можно было выполнить т...Вопрос № 83239: Здравствуйте!
Подскажите пожалуйста, как убрать мерцание у компоненты TIMAGE при ее перерисовки? ОЧЕНЬ НУЖНО :)
__Пожалуйста с примером__ ....
Всем спасибо!!!...Вопрос № 83240: Здравствуйте Уважаемые эксперты!
Вот мой случай: у меня есть патч-инсталлятор(не мой), я хочу его засунуть в свою прогу как ресурс и сделать защиту с привязкой к компу. Лучше делать через имя компьютера или как?
После правильного кода юзера,...Вопрос № 83275: Проблема такая: в потоке формируется письмо и отправляется по почте. Дело в том что почта отправляется и доходит до адресата, но вот программа не хочет закрываться. Я так понимаю что программа подвисает в условии (if form1.IdSMTP1.Connected) и не дох...
Вопрос № 83.174
Всем привет!!! Помогите начинающему в работе с БД.
Проблема стоит в том, что созданная таблица DBGrid1 при помощи База Данных мастера форм, должна дополняться новыми данными с dbf файлов, которые загружаются при помощи кнопки button, а я не знаю. Как это осуществить?
Заранее благодарю!
Отправлен: 18.04.2007, 22:22
Вопрос задала: Lin (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 1)
Отвечает: Химяк Виктор Васильевич
Здравствуйте, Lin!
1.С вкладки BDE бросаем на форму компонент TTable, в свойстве TableName прописываем путь к таблице, щелкаем правой кнопкой мыши на TTable, выбираем из контекстного меню пункт Fields Editor добавляем необходимые поля,
2. С вкладки DataAccess на форму бросаем компонент TDataSourse, в свойстве DataSet, выбираем TTable.
3. В свойстве DataSourse DBGrid-a выбираем DataSourse1.
4. В свойстве Active TTable, ставим Тrue.
Ответ отправил: Химяк Виктор Васильевич (статус: 4-ый класс)
Ответ отправлен: 18.04.2007, 22:48
Вопрос № 83.190
Доброго времени суток уважаемые! Сегодня состоялось мое первое знакомство с FastReport 3.24. У меня n-ное кол-во проектов использующих версию 2.47. Естественно они перестали работать, а переделывать надо. Как быть? Некоторые отчеты довольно сложные, а их общее количество около 200. Неужели другого пути, кроме как переписывать нет?
Отправлен: 19.04.2007, 00:12
Вопрос задала: Ta-ny (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 3)
Отвечает: Синельников Сергей
Здравствуйте, Ta-ny!
Конечно есть. Господа разработчики позаботились и создали конвертер из fr2x в fr3. Должен быть у них на сайте в свободном доступе, т.е. даром.
Ответ отправил: Синельников Сергей (статус: 3-ий класс)
Ответ отправлен: 20.04.2007, 01:44 Оценка за ответ: 5
Отвечает: Gh0stik
Здравствуйте, Ta-ny!
Да существует конвертер проектов FastReport 2.xx в FastReport 3, но как оказалось найти его не так уж и просто на сайте производителя, вот ссылка на продукт (но для закачки Вам предложат заполнить маленькую анкету).
Good Luck!!!
--------- Господь Бог - это всего лишь сверхмощный генератор случайных чисел, в соответствии с которыми сочетаются события на Земле. Генератор случайных чисел - и только.
Ответ отправил: Gh0stik (статус: Профессионал) Украина, Славянск Организация: Славянский государственный педагогический университет (Кафедра алгебры) ICQ: 289363162 ---- Ответ отправлен: 20.04.2007, 02:03 Оценка за ответ: 5
Вопрос № 83.192
Здраствуйте экперты.
Мне нужно создать в Delphi 6, 2 приложения:
1)Сервер, cgi приложение(или другое, если возможно), исполняеться на вэб сайте.
2)Клиент, исполняеться на компьютере пользователя
Мне нужно что бы можно было выполнить такой алгоритм действий:
а)Приложение2 отправляет в Приложение1 текст, и свой IP
б)Приложение1 обрабатывает данные(это сделаю я сам)
в)Приложение1 отправляет результат в Приложение2.
Меня интересует как реализовать пункты а) и в), если можно, то выложите пример, или где такой материал можно найти.
Всем заранее спасибо.
Отвечает: Bingo
Здравствуйте, Иван Ивановввв!
Можно реализовать Вашу задумку с помощью TIdTCPClient и TIdTCPServer, расположенных на панели Indy. Чтобы узнать текущий IP у компьютера, необходимо использовать TIdIPWatch на панели Indy Misc (для верности, но можно было бы узнать адрес клента во время получения строки).
Ниже код для сервера (TIdTCPServer) - приложение1.
---
procedure TForm1.IdTCPServer1Execute(AThread: TIdPeerThread);
var s,res:string;
begin
with AThread.Connection do
begin
s:=currentreadbuffer;//здесь хранится строка с IP адресом , которую послал клиент
//Ваши вычисления.....
writeln(res);// в переменной res будет храниться ответ клиенту.
Disconnect;
end;
end;
----
Все, сервер готов. Создадим клиент - приложение2. На форме разместим кнопку и TEdit. В настройках клиента запишем такой же порт, как и у сервера, а в Host - IP адрес или имя компьютера, где размещен сервер. По нажатии по кнопке произойдет следующее:
---
procedure TForm1.Button1Click(Sender: TObject);
begin
IdTCPClient1.Connect;
IdIPWatch1.ForceCheck;//проверяем текущей IP.
IdTCPClient1.Write(IdIPWatch1.CurrentIp+'%'+Edit1.Text);//в посылаемой строке IP адрес будет отделяться от текста процентом(%).
Edit1.Text:=IdTCPClient1.readln; // в TEdit запишется ответ с сервера.
IdTCPClient1.Disconnect;
End;
---
Ну вот, все как Вы просили сделать. Только необходимо, чтобы на Web сайте было разрешено запускать различные исполняемые программы.
Удачи!
--------- C темным пивом в светлое будущее!
Ответ отправил: Bingo (статус: 4-ый класс)
Ответ отправлен: 21.04.2007, 15:16 Оценка за ответ: 5 Комментарий оценки: Спачибо, вы мне очень помогли. Теперь вот осталось запустить програму с сайта.
Вопрос № 83.239
Здравствуйте!
Подскажите пожалуйста, как убрать мерцание у компоненты TIMAGE при ее перерисовки? ОЧЕНЬ НУЖНО :)
__Пожалуйста с примером__ ....
Всем спасибо!!!
Отвечает: Jakoni
Здравствуйте, Чернявский Александр!
начало перерисовки
Image1.Canvas.Lock;
конец перерисовки
Image1.Canvas.UnLock;
Ответ отправил: Jakoni (статус: 1-ый класс)
Ответ отправлен: 19.04.2007, 11:23
Отвечает: ~Steep~
Здравствуйте, Чернявский Александр!
Либо сначала рисуйте в памяти (например на TBitmap.Canvas) , а потом уже на компоненте отрисовывайте.
То же самое что Form1.DoubleBuffered := true;
--------- Все всегда делаеться к Лучшему!
Ответ отправил: ~Steep~ (статус: 6-ой класс)
Ответ отправлен: 19.04.2007, 12:25 Оценка за ответ: 4
Вопрос № 83.240
Здравствуйте Уважаемые эксперты!
Вот мой случай: у меня есть патч-инсталлятор(не мой), я хочу его засунуть в свою прогу как ресурс и сделать защиту с привязкой к компу. Лучше делать через имя компьютера или как?
После правильного кода юзера, прога распаковывает патч(он для игры) и устанавливает его, при этом я хочу сделать так, чтобы другие пользователи сети не могли запустить эту игру. Я хочу сделать так: скрыть(как системный) запускной exe файл и поставить свой вместо него, который будет проверять имя компа с которого запускается игра(имя, прога будет брать наверное при генерировании кода при регистрации, т.к. я хочу сделать привязку к имени компа). Нормально так получится?
И ещё патч распакует файлы, которые юзеры могут перенести к себе и запустить со своим оригинальный exe, как в этом случае быть, можно ли как-нибудь защитить файлы от копирования на другой комп???
Отвечает: LanK
Здравствуйте, Букаев Кирилл Иванович!
"можно ли как-нибудь защитить файлы от копирования на другой комп"
нет нельзя
В вашем варианте можно распаковать в память там с ними отратботать и удалить...
Привязка к имени компьютера... если игра классная - ну что ж, поменяем ;) ... себе имя компьютера. Бери комплекс - сколько памяти, сколько винт всё что сможете "выдрать".
Настоящая защита может быть только на железном уровне - когда часть вашей программы находится в микросхемах...
Могу посоветовать посмотреть ASProtect.
И самое главное саму программу упаковать ASPack - по крайней мере "прямым" просмотром нельзя будет просмотреть что происходит программа будет распаковываться в память и работать оттуда.
P.S. Написать 100% защищенную на программном уровне программу... идея практически недостижимая.
P.P.S. Самый легкий путь - это выпускать постоянно обновления (для игры - новые юниты, а в обновлениях... проверять "имя компьютеров" :) )
P.P.P.S. Для сети уровня "школа" Ваш вариант может и прокатит ;).
--------- Пусть все будет хорошо! Давайте жить дружно! :) И будет жить еще лучше!
Ответ отправил: LanK (статус: Студент)
Ответ отправлен: 19.04.2007, 11:49 Оценка за ответ: 5 Комментарий оценки: Спасибо за советы! Мне не нужна супер-защита, нужна просто элементарная для обычных пользователей.
Вопрос № 83.275
Проблема такая: в потоке формируется письмо и отправляется по почте. Дело в том что почта отправляется и доходит до адресата, но вот программа не хочет закрываться. Я так понимаю что программа подвисает в условии (if form1.IdSMTP1.Connected) и не доходить до строчки (form1.close). Или я не прав. Подскажите в чем проблема и как ее решить
Приложение:
Отправлен: 19.04.2007, 14:22
Вопрос задал: Bee.line (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 10)
Отвечает: Werewolf
Здравствуйте, Bee.line!
Почему не сделать Connect в основном потоке перед созданием потока SendMail
а Disconnect и form1.Close в обработчике SendMail.OnTerminate.
Ответ отправил: Werewolf (статус: Студент)
Ответ отправлен: 19.04.2007, 16:53 Оценка за ответ: 4 Комментарий оценки: Дело в том что я не хочу, чтобы пользователь замечал подвисание программы. А при connect b Send программа подвисает на время выполнения команды, что не удобно. А моя причина в том что поток не завершается, т.е. происходит Disconnect и Close, но из-за того что поток не завершается и программа висит