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

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


Информационный Канал Subscribe.Ru


RusFAQ.ru: Программирование на C++ Builder / Delphi

Выпуск № 176
от 12.06.2003, 18:10

Администратор:
Имя: Калашников О.А.
URL: Информационный ресурс
ICQ: 68951340
Россия, Москва
О рассылке:
Задано вопросов: 731
Отправлено ответов: 1307
Активность: 178.7 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе][Обсудить на форуме]


 Список экспертов, ответы которых опубликованы в данном выпуске

X-RayMan
Статус: Начальный
Общий рейтинг: 133.33
[Подробней >>]
Bob Johnson
Статус: Профессиональный
Общий рейтинг: 151.74
URL: Программирование
[Подробней >>]
Stein
Статус: Опытный
Общий рейтинг: 161.29
[Подробней >>]
 
Vdr
Статус: Доверительный
Общий рейтинг: 112.69
[Подробней >>]
Zensor
Статус: Начальный
Общий рейтинг: 160
[Подробней >>]


 Краткий перечень вопросов

Вопрос № 725. Вопрос таков: у меня в игре графические ресурсы в бмп формате, как мне сделать их проверку, т.е чтоб... (ответов: 5)
Вопрос № 726. Здравствуйте. У меня немного странный вопрос: Можно ли во время выполнения получить имя функции (в в... (ответов: 5)
Вопрос № 727. Здравствуйте уважаемые эксперты! Подскажите пожалуйста, как можно скопировать из программы файлы из ... (ответов: 2)

Вопросов: 3, ответов: 12


 Вопрос № 725

Вопрос таков: у меня в игре графические ресурсы в бмп формате, как мне сделать их проверку, т.е чтобы никто их не перерисовал... я знаю как сделать если в другом редакторе перерисовывали, или изменился размер... а если представить что размер остался такой же, а заголовок остался идентичным?



Вопрос отправлен: 08.06.2003, 11:36
Отправитель: Ландграф Павел

[Следующий вопрос >>] [Список вопросов]

Отвечает X-RayMan

Приветствую Вас, Ландграф Павел!
Попробуй ввести контрольну сумму. Например в каждом килобайте считать сумму красного. И записать это все в какой то файл со страшным названием типа game.sys :) предварительно закодировав.

Ответ отправлен: 08.06.2003, 15:18
Отправитель: X-RayMan


Отвечает Bob Johnson

Здравствуйте, Ландграф Павел!
Считай их контрольную сумму в программе и сравнивай с оригинальной. Но если надо - сломают все равно.

* EMan1.1: ---===*** Eternal power ***===---


Ответ отправлен: 08.06.2003, 17:34
Отправитель: Bob Johnson


Отвечает Stein

Добрый день, Ландграф Павел!
Можно сделать масив из значений цветов каких-либо пикселей(к примеру, по углам и в середине, но можно и другие, это уж как захочешь) и проверять их.

Ответ отправлен: 08.06.2003, 14:05
Отправитель: Stein


Отвечает Vdr

Здравствуйте, Ландграф Павел!
А как насчет того, что считать контрольную сумму?
Удачи!

Ответ отправлен: 09.06.2003, 08:55
Отправитель: Vdr


Отвечает --- Нет данных ---

Приветствую Вас, Ландграф Павел!
Можно хранить эти графические рессурсы зашифрованными, а можно проверять контрольную сумму перед их использованием.


Ответ отправлен: 08.06.2003, 12:15
Отправитель: --- Нет данных ---


 Вопрос № 726

Здравствуйте.
У меня немного странный вопрос:
Можно ли во время выполнения получить имя функции (в виде строки)в которой сейчас происходит выполнение?
procedure TfrmMain.ButtonRedClick(Sender: TObject);
begin
s:=(some function);
//as result s='ButtonRedClick'
end;
Спасибо.
Может быть нужна подпрограмма на ассемблере?
Или это в принципе невозможно?



Вопрос отправлен: 09.06.2003, 11:22
Отправитель: Serg

[Следующий вопрос >>] [Список вопросов]

Отвечает --- Нет данных ---

Доброе время суток, Serg!
Я честно говорю не знаю, но как альтернативу могу предложить в начале каждой процедуры вручную присваивать переменной название соответствующей процедуры...

Ответ отправлен: 09.06.2003, 11:36
Отправитель: --- Нет данных ---


Отвечает Zensor

Добрый день, Serg!
Можно, но во время откладки программы на стадии разработки.

Ответ отправлен: 09.06.2003, 12:31
Отправитель: Zensor


Отвечает Stein

Доброе время суток, Serg!
Эксперт Vdr прав, советую к ассемблерщикам обратиться...

Ответ отправлен: 09.06.2003, 12:30
Отправитель: Stein


Отвечает Vdr

Приветствую Вас, Serg!
По идее, имя функции - это нечто для твоего удобства... Прикомпиляции оно теряется, заменяясь на адреса...имхо.
Удачи!

Ответ отправлен: 09.06.2003, 12:26
Отправитель: Vdr


Отвечает Bob Johnson

Добрый день, Serg!
Во время выполнения программы не остается никаких имен функций, переменных, классов и т.д. Все заменяется адресами в памяти.
Но, есть и исключение: если при создании программы была включена опция RTTI (Run-Time Type Information), то остаются имена классов. Это реализуется за счет того, что каждый экземпляр класса имеет некоторое свойство, которое содержит текстовое имя его типа. Применяется это для проверки, возможен ли dynamic_cast, (преобразование типов классов от одного к другому). В Delphi это реализуется операторами is и as.

* EMan1.1: ---===*** Eternal power ***===---


Ответ отправлен: 09.06.2003, 17:26
Отправитель: Bob Johnson


 Вопрос № 727

Здравствуйте уважаемые эксперты!
Подскажите пожалуйста, как можно скопировать из программы файлы из каталога вместе со всеми подкаталогами.
Язык программирования - С++Builder 5.0
Если у кого-нибудь есть примеры решения подобной задачи, вышлите пожалуйста на e-mail



Вопрос отправлен: 09.06.2003, 16:09
Отправитель: Alexandr (balex@mail.spbnit.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает Zensor

Приветствую Вас, Alexandr!
есть там команда какаято, я непомню, но можно попробовать сделать BAT фаял и запустить его незаметно для порльзователя. (см. приложение)

Приложение:

Ответ отправлен: 09.06.2003, 18:31
Отправитель: Zensor


Отвечает Bob Johnson

Доброе время суток, Alexandr!
Для этого можно:
1. Воспользоваться внешней программой, которая это може (например, xcopy). При этом ты запустишь ее из билдера с нужными параметрами.
2. Писать самому процедуру, которая копирует все файлы из одного каталога в другой. Для этого тебе надо будет выполнить поиск файлов и, если найдешь каталог, то вызываешь эту же процедуру копирования (т.е. рекурсивно) с именем уже нового каталого, а если найдешь файл - то просто копируешь его.

* EMan1.1: ---===*** Eternal power ***===---


Ответ отправлен: 10.06.2003, 01:17
Отправитель: Bob Johnson



Форма отправки вопроса

Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

(C) 2002-2003 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


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


Получить ответов:


 Выбор рассылки

Программисту
Assembler (34)
C / C++ (29)
Perl (7)
Builder / Delphi (19)
Pascal (30)
Basic / VBA (12)
Java / JavaScript (12)
PHP (8)
MySQL / MSSQL (7)
Пользователю
Windows 95/98/Me (36)
Windows NT/2000/XP (32)
"Железо" (25)
Поиск информации (16)
Администратору
Windows NT/2000/XP (16)
Linux / Unix (9)
Юристу
Гражданское право (6)
Семейное право (2)
Трудовое право (3)
КоАП (3)

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




Задать вопрос | Регистрация эксперта | Поиск в базе | Чат | Форумы | Новости
Проект экспертов RusFAQ.ru | Фотоальбом | Virus.RusFAQ.ru | Администрирование


Яндекс цитирования
© 2001-2003 Россия, Москва. Авторское право: Калашников О.А.

http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное