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

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

Модерирует : ShIvADeSt

ShIvADeSt (20-04-2006 01:53): http://forum.ru-board.com/topic.cgi?forum=33&topic=6679#1  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

   

VitaliM



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
OdesitVadim
Спасибо, отвечать начали.
Я уже не одну собаку съел на этом oh.exe, все бестолку.
У меня с хелпом Win32 API чудеса тоже происходят: то откроется справка, а может и не открыться. Вот я и спрашиваю: ты лично пользуешся хелпами сторонних компонентов в Delphi 7 и как все работает? Я уже писал, что тотже комплект хелпов в делфи 6 работает на ура, а в 7 просто облом!
 
Добавлено
Господа программисты, подключайтесь! Даже если нет ответа, просто скажите, что у меня так а у меня эдак.

Всего записей: 2184 | Зарегистр. 12-01-2005 | Отправлено: 17:18 16-03-2005 | Исправлено: VitaliM, 17:22 16-03-2005
OdesitVadim



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
со сторонними
тут с родными проблемы: хелп interbase - ibx.hlp ищет, а на диске есть d7ibx.hlp сколько носом его не тыкал, не хочет, просит ещё раз при каждом обращении

Всего записей: 1568 | Зарегистр. 19-09-2003 | Отправлено: 18:29 16-03-2005
FAngel



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
VitaliM
Не расстраивайся, помощь всегда у бормандов работала через одно место Обычно oh.exe все же помогает. Да и не столь критична эта ошибка, всегда можно хелп и ручками открыть.

Всего записей: 799 | Зарегистр. 04-12-2003 | Отправлено: 06:31 17-03-2005
vserd

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

Цитата:
тут с родными проблемы: хелп interbase - ibx.hlp ищет, а на диске есть d7ibx.hlp  

сделай поиск по ibx.hlp внутри *.cnt. Где-то они видно не исправили директиву вхождения, или переименуй сам файл помощи.

Всего записей: 2065 | Зарегистр. 08-05-2002 | Отправлено: 17:38 17-03-2005
hijaq



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите  пожалуйста в чём может быть проблема:
Открываю делфой файл к примеру file.dpr (файл проекта). Открывается file.pas. А формы нет. при нажатии alt+F12 (View as Form) ничего не происходит, а хотя должна появится форма проекта.

Всего записей: 75 | Зарегистр. 02-12-2004 | Отправлено: 21:51 18-03-2005
Z MeZe



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
hijaq
А лежит ли файл формы в директории?
Если да:
Минимальный файл проекта *.dpr должен выглядеть так:

program Project1;
 
uses
  Forms;
  Unit1 in 'Unit1.pas' {Form1};
 
{$R *.res}
 
begin
  Application.Initialize;
  Application.CreateForm(TForm1, Form1);
  Application.Run;
end.

Принципиальной (я думаю, для твоего случая) является строка:

Unit1 in 'Unit1.pas' {Form1};

Для того, чтобы видеть форму она должна ассоциироваться с юнитом твоим.
Думаю, понятно.
Скорее всего у тебя так:

Unit1 in 'Unit1.pas';


Всего записей: 455 | Зарегистр. 09-02-2004 | Отправлено: 22:39 18-03-2005
OdesitVadim



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

Цитата:
 нажатии alt+F12 (View as Form)

А ничего и не должно произойти. Это действие предназначено, если просматриваеш форму в текстовом режиме. Но так как у тебя открыт pas файл, то значит форму в текстовом режиме не просматриваеш. Нажми луше Shift-F12  - появиться окошко с доступными формами. Если там ничего нет, тогда будем думать.
Идея два. А при загрузке проекта Делфа не ругалась случайно (на отсутствие чего-либо)?

Всего записей: 1568 | Зарегистр. 19-09-2003 | Отправлено: 14:46 19-03-2005
YurikGL



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
>hijaq
 
Может там не ни одной формы?

Всего записей: 308 | Зарегистр. 02-09-2004 | Отправлено: 16:15 19-03-2005
hijaq



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Решил проблему координально... =) Создал новую форму, и связвл с pas. В чём собственно было дело, так и не понял.

Всего записей: 75 | Зарегистр. 02-12-2004 | Отправлено: 22:36 19-03-2005
hijaq



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
И ещё вопрос... Какая есть в делфе функция, которая отвечает за открытие файла? Т.е. нажал к примеру на кнопочку - открылся, допустим, help.html. Подобная функции ShellExecute в плюсатом си.

Всего записей: 75 | Зарегистр. 02-12-2004 | Отправлено: 16:14 20-03-2005
EZH



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Это WinAPI функция, так что и в Delphi будет работать

Всего записей: 1738 | Зарегистр. 02-09-2004 | Отправлено: 16:18 20-03-2005
Tropin



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
hijaq
Проблема с формой у меня тож была... не знаю почему, но я открывал dpr, а потом приходилось открывать отдельно и файлы pas
 
ShellExecute лежит в ShellAPI.pas  


----------
Вот потому, что вы говорите то, что не думаете и думаете то, что не думаете, вот в клетках и сидите... (C) Кин-дза-дза

Всего записей: 538 | Зарегистр. 25-11-2002 | Отправлено: 10:26 21-03-2005
Larry Laffer



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Подскажите, можно ли ограничить доступ к определенному файлу всем приложениям, кроме одного (внешнего)? Типа создаю TFileStream на чтение с параметром ShareExclusive, но определнному приложению доступ бы открывался?

Всего записей: 604 | Зарегистр. 09-10-2004 | Отправлено: 19:54 28-03-2005
OdesitVadim



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

Цитата:
 кроме одного (внешнего)

это как
можно использовать систему привелегий, Если мы с ХР имеем дело. Создаём пользователя, разрешаем ему только обращаться к данному файлу. А стартуем прогу от его имени или програмно изменяем привелегии

Всего записей: 1568 | Зарегистр. 19-09-2003 | Отправлено: 20:35 28-03-2005
ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Larry Laffer
Хм, если ты знаешь какому приложению нужен доступ к файлу, то после создания (кстати а почему именно FileStream, а не CreateFile с  нужными флагами?) потока и запуска нужного приложения передаешь ему хэндл и он по этому хэндлу че хочешь с файлом делает. И такой вопрос, а на кой черт шаре ексклюзив?

----------
И создал Бог женщину... Существо получилось злобное, но забавное...

Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 02:10 29-03-2005
Larry Laffer



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
OdesitVadim
ShIvADeSt
Просто идейка возникла таким способом защищать от копирования лицензионные ключики, установленные в системе. Например для DrWeb'a. Просто создаем демона,к оторый запрещает доступ к файлу ключа всем приложениям, кроме самого паука...

Всего записей: 604 | Зарегистр. 09-10-2004 | Отправлено: 10:23 29-03-2005
OdesitVadim



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Larry Laffer
В случае веба, ключиком пользуется несколько прог.
Цитата:
 Просто создаем демона

Это о винде или о Линухе?

Всего записей: 1568 | Зарегистр. 19-09-2003 | Отправлено: 11:06 29-03-2005
Larry Laffer



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
О винде. Я имею ввиду обычный сервис, который висит в памяти.

Всего записей: 604 | Зарегистр. 09-10-2004 | Отправлено: 12:17 29-03-2005
OdesitVadim



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
В данном случае нужно писать драйверок ядра. Но тут камней подводных - уйма. Тебя там просто никто не контролирует - шаг не правильно - смерть=синий экран. Писал когдато под дос подобную мутку( с перехватом прерываний), но корректно не работала(на асме была). А если защитить от кражи ключей, то тут можно очень просто. Как человек воровать ключик будет? Через проводник естественно. Не будет же он прогу ваять, которая скопирует ключ или с консоли копировать (о ДОС, скажет простой смерный , ). Поэтому достаточно запретить для проводника. Делается это просто. Для делфи в папке \Borland\Delphi7\Demos\ActiveX\ShellExt\ есть файлик copyhook.dpr - пример того, как перехватить копирование, удаление, переименование, перемещение - там даже пути к файликам передаются. Анализируеш, если файл твой - культурно отказываеш.  
Прога получается как "плагин" - поэтому в диспечере задач не висит, и так просто не выпалишь. Но отладка этого блага - геморой(проверено).

Всего записей: 1568 | Зарегистр. 19-09-2003 | Отправлено: 12:32 29-03-2005
ShIvADeSt



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

Цитата:
 А если защитить от кражи ключей, то тут можно очень просто. Как человек воровать ключик будет? Через проводник естественно.

Не верно, обычный юзер даже не найдет где ключ лежит, для него все что глубже чем корень диска, уже слишком глубоко, а тот кто захочет будет явно не полупроводником копировать.Larry Laffer Для тебя подойдет способ, который уже не однократно описывался в ПП. Это переопреление вызовов стандартных функций, то есть вешаешь хук (посмотри я не давно давал линк на страницу с подробным описанием) на функцию CopyFile(Ex) и отслеживаешь какие файлы куда пытаются скопировать. Если это твой ключик, то пускаешь на заглушку иначе разрешаешь. Два НО, первое админ всегда сможет закрыть твою прогу, которая лдочит это дело, второе из под ДОС все равно утащат.


----------
И создал Бог женщину... Существо получилось злобное, но забавное...

Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 02:20 30-03-2005
   

Страницы: 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

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Delphi
ShIvADeSt (20-04-2006 01:53): http://forum.ru-board.com/topic.cgi?forum=33&topic=6679#1


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru