Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Delphi


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Delphi

Выпуск № 527
от 09.07.2006, 20:05

Администратор:Калашников О.А.
В рассылке:Подписчиков: 360, Экспертов: 59
В номере:Вопросов: 4, Ответов: 10


Вопрос № 48075: Здраствуйте Подскажите пожалуста Использую для перетаскивании формы следующий код //< ReleaseCapture; Form1.Perform(Wm_SysCommand, $F012,0); >// но если система настроена не отображать содержимое при перетаскивани...
Вопрос № 48111: Я новичок в визуальном программировании. Хочу начинать программировать под .NET. Прочитал в книге описание VCL Win32, VCL .NET, Windows Forms для .NET. "... VCL .NET - это приложения .NET, работающие под управлением CLR и использующие вер...
Вопрос № 48126: Здравствуйте, господа Эксперты! У меня несколько вопросов. Буду очень благодарен, если скажете по каждому хоть что-нибудь. 1). Дописываю программу для тестирования, база с вопросами шифруется. Для преподавателей, которые будут получать результаты...
Вопрос № 48136: Добрый день, Уважаемые Эксперты. Не могу реализовать перетаскивание (Drag-and-Drop) граф. файла из ShellListView в Image. Подскажите плс желательно примерчиком....

Вопрос № 48.075
Здраствуйте
Подскажите пожалуста
Использую для перетаскивании формы следующий код
//<
ReleaseCapture;
Form1.Perform(Wm_SysCommand, $F012,0);
>//
но если система настроена не отображать содержимое при перетаскивание то следователь не будет, но очень надо не настраивая систему, чтобы отображалось содержимое моей формы
может есть WinAPI помогите пожалуйста.
Заранее благодарен.
Отправлен: 04.07.2006, 00:26
Вопрос задал: Venom56r (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Nant
Здравствуйте, Venom56r!

Есть программный способ переключить систему на отображение содержимого формы. В модуле windows.pas описана функция systemparametersinfo, полное описание ее в хелпе WindowsSDK. В данном случае делаем так:

uses windows, ... ;

procedure TForm1.ShowContent(Value: Boolean);
begin
SystemParametersInfo(SPI_SETDRAGFULLWINDOWS, Ord(Value), nil, 0);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
ShowContent(true);
end;

procedure TForm1.FormClose(Sender: TObject);
begin
ShowContent(false);
end;

при запуске проги включаем системный параметр отображения, при выходе из проги возвращаем как было
Ответ отправил: Nant (статус: 2-ой класс)
Ответ отправлен: 04.07.2006, 12:30
Оценка за ответ: 4
Комментарий оценки:
Спасибо пока сойдет


Вопрос № 48.111
Я новичок в визуальном программировании. Хочу начинать программировать под .NET. Прочитал в книге описание VCL Win32, VCL .NET, Windows Forms для .NET.
"... VCL .NET - это приложения .NET, работающие под управлением CLR и использующие версию .NET той же библиотеки VCL, которая применяется и в VCL Win32. Правда, библиотека эта несколько усечена".
"... Windows Forms для .NET - это в чистом виде приложения .NET, создаваемые на языке Delphi. Такие приложения могут полностью использовать все возможности NFCL и компоненты этой библиотеки. Эти компоненты во многих случаях мощнее соответствующих компонентов VCL, но состав библиотеки беден по сравнению с VCL. Использование VCL в приложениях этой группы несколько ограничено".
Так вот хотел посоветоваться с вами. Какой вариант мне выбрать и какое мнение о них у вас? В ближайшее время программировать буду инженерные программы - т.е. применяются: математика, графика, картинки.

Приложение:

Отправлен: 04.07.2006, 12:15
Вопрос задал: Denver 22 (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 4)

Отвечает: sir henry
Здравствуйте, Denver 22!
Для учебных целей прекрасно пойдет и то и другое.
Затруднение будет в другом. Прежде чем приступить к программированию, Вы должны очень серьезно к проектированию этого самого приложения.
Для начала составляете подробный план из компонентов Вашего приложения, а потом рассматриваете и тот и другой инструмент на предмет, как там будут реализованы Ваши компоненты.
И еще учтите. что кроме Вашего приложения, Вам на компьютер клиента придется дополнительно ставить исполняемую среду .NET.
Ответ отправил: sir henry (статус: Академик)
Россия, Красноярск
----
Ответ отправлен: 04.07.2006, 12:31
Оценка за ответ: 4
Комментарий оценки:
Для начинающего "рассматриваете и тот и другой инструмент на предмет, как там будут реализованы Ваши компоненты" - это слишком.
Насколько я понял, то, что мне надо (см. мои требования выше) есть и там, и там. Спасибо

Отвечает: aaqs
Здравствуйте, Denver 22!
имхо, .NET еще "сыроват", во многих отношениях, конечно, переход на него неизбежен (по аналогии DOS=>Win32), а Win32 будет "жить" достаточно долго, и к тому же Win32 приложения не требуют специальных библиотек (в отличии от .NET - Framework). Вообщем, здесь выбор технологии во многом зависит от конечного пользователя и решаемых задач (и в данном случае с помощью Win32 будет гораздо удобнее их решать)
Ответ отправил: aaqs (статус: 5-ый класс)
Ответ отправлен: 04.07.2006, 14:11
Оценка за ответ: 5
Комментарий оценки:
Помимо того, что .NET - технология будущего, выбор за ней я оставлял и потому (ну новичок я), что код .NET показался мне поаккуратней. Понравился короче.
Блин только большой объем по .NET прочитал, теперь опять похоже под Win32 все читать. Ладно, подумаю еще. Еще раз спасибо.


Вопрос № 48.126
Здравствуйте, господа Эксперты! У меня несколько вопросов. Буду очень благодарен, если скажете по каждому хоть что-нибудь.
1). Дописываю программу для тестирования, база с вопросами шифруется. Для преподавателей, которые будут получать результаты, написал отдельную программу - редактор вопросов, который их шифрует для теста. Теперь думаю: оставить ее отдельной программой или включить модулем в тестирующую? Дело в том, что в самой тестирующей свободен для доступа только сам тест (для студентов), а остальные функции (просмотр результатов, настройки теста и т.д.) запаролены для преподавателей. Не получится ли, что если пароль (общий для преподавательских функций) будет сломан, получен доступ к редактору вопросов, то разберут алгоритм шифрования и всё сдадут на 5? Как считаете?
3). Хотелось бы побольше узнать про алгоритмы шифрования - возможно сравнительный анализ - достоинства недостатки, особенно какие наиболее стойкие и т.д. Пользуюсь пакетом компонентов DCPCrypt. Очень нравится, но в хелпе к нему алгоритмы не описываются. Кто пользуется, подскажите.
2).В Outpost Firewall наблюдал интересную вещь - невозможно убить его процесс ни из Диспетчера задач, ни из Process Explorer: "Процесс не может быть завершен. Отказано в доступе". Как зто реализовано? Если можно, дайте, пожалуйста, примерчик.
Заранее спасибо за помощь.
Отправлен: 04.07.2006, 14:48
Вопрос задал: Neiroman (статус: 1-ый класс)
Всего ответов: 5
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Решетник Д
Здравствуйте, Neiroman!
1. Даже если программа не для школы, а для универа, вполне хватит xor-шифрования!
я в этом убедился. 3 года стоит программа и никто не взломал.... может никто и не пробовал ))
главное - чтобы текст был представлен не в я вном виде, после чего любая охота к взлому шифра пропадает...
---------
Жизнь коротка, чтобы писать на ассемблере
Ответ отправил: Решетник Д (статус: 10-ый класс)
Ответ отправлен: 04.07.2006, 15:03

Отвечает: Проходящий Мимо
Здравствуйте, Neiroman!
Интересно, у Вас учатся студенты-математики с гениальным уклоном? В пакете DCPCrypt реализовано несколько алгоритмов шифрации: Blowfish, Cast128, Cast256,Gost, IDEA, Mars, Misty1, RC2, RC5, RC6, Rijndael, Twofish. По каждому из них в интернете можно найти описание с анализом стойкости к взламыванию. Притом, можете в программе реализовать проверку количества неправильного ввода пароля. На мой взгляд, слабым звеном будет не алгоритм шифрования, а обыкновенная небрежность преподавателей в отношении программы и тестов. Все-таки лучше будет, если система тестирования и редактор вопросов будут разными программами, при этом снизится риск того, что кто-то оставит редактор незакрытым со списком всех вопросов. Также можно реализовать разграничение по предметам или видам вопросов, когда разные преподаватели не имеют доступа к спискам "не своих" вопросов. Но снова оговорюсь, самое больное место в большинстве систем защиты - человеческий фактор.
---------
Carpe diem!
Ответ отправил: Проходящий Мимо (статус: 6-ой класс)
Ответ отправлен: 04.07.2006, 15:20

Отвечает: aaqs
Здравствуйте, Neiroman!
2) http://www.rohos.com/help/crypto_algorithms.htm
Ответ отправил: aaqs (статус: 5-ый класс)
Ответ отправлен: 04.07.2006, 15:53

Отвечает: METALLDOCTOR
Здравствуйте, Neiroman!
Лучше сделайте так, что бы прога не запускалась, если её скачать, а то и без гениальности можно будет перебором найти все правильные ответы заранее, а на тестировании успеть хакнуть пока преп не смотрит практически нереально. Делается это примерно так: при установке создаётся ХЭШ нескольких параметров и заносится в реестр, правда, понадобится ещё установщик, но у меня есть доки, как это делается, могу выслать
---------
Ни о чём не жалею!
Ответ отправил: METALLDOCTOR (статус: 3-ий класс)
Ответ отправлен: 04.07.2006, 17:32

Отвечает: Nant
Здравствуйте, Neiroman!

По поводу процессов. Возможно Вам поможет что-то из этого:

http://delphiworld.narod.ru/base/run_in_other_user.html
http://delphiworld.narod.ru/base/hide_process.html
Ответ отправил: Nant (статус: 2-ой класс)
Ответ отправлен: 04.07.2006, 18:21


Вопрос № 48.136
Добрый день, Уважаемые Эксперты.
Не могу реализовать перетаскивание (Drag-and-Drop) граф. файла из ShellListView в Image. Подскажите плс желательно примерчиком.
Отправлен: 04.07.2006, 15:53
Вопрос задал: Дмитрий Александрович (статус: 1-ый класс)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Nant
Здравствуйте, Дмитрий Александрович!

пример под рукой не оказалось, набросал быстренько в общих чертах.
1. для ShellListView1 устанавливаем DragMode:=dmAutomatic;
2. для Image1 обрабатываем события OnDragOver и OnDragDrop

Приложение:

Ответ отправил: Nant (статус: 2-ой класс)
Ответ отправлен: 04.07.2006, 17:05
Оценка за ответ: 5
Комментарий оценки:
Спасибо огромное. Только что попробовал. Работает. Файлы bmp претаскивает на "раз". При попытке перетащить файл jpg - ошибка "Unknown picture file extension(.jpg)". Точно помню, что как-то загружал jpg в Image, а как - не помню. Мож подскажет кто?

Отвечает: Савенко Вадим Иванович
Здравствуйте, Дмитрий Александрович!
По-моему в uses нужно прописать 'JPEG'
Ответ отправил: Савенко Вадим Иванович (статус: 3-ий класс)
Ответ отправлен: 04.07.2006, 19:32
Оценка за ответ: 5
Комментарий оценки:
Спасибо совершенно верно!


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2006, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Версия системы: 4.34 от 01.06.2006
Яндекс Rambler's Top100

В избранное