Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.05.28;
Скачать: [xml.tar.bz2];

Вниз

Помогите сделать поект   Найти похожие ветки 

 
TBAPb ©   (2006-05-07 06:40) [0]

Пытаюсь сделать экзаменационную работу к окончанию 11-го класса. Delphi изучал всего 3 месяца.
Все уже почти готово, осталось только сделать так, чтобы при нажатии на соответствующую кнопку вылезала "справка" (html-документ). Часа два, наверное, пытался это осуществить, но так ничего и не добился.
И еще: как из проекта делфи сделать независимое приложение?


 
Virgo_Style ©   (2006-05-07 08:59) [1]

TBAPb ©   (07.05.06 6:40)
И еще: как из проекта делфи сделать независимое приложение?


???

По поводу html-справки - ShellExecute, имя файла = файл справки


 
Loginov Dmitry ©   (2006-05-07 09:31) [2]

11-й класс уважаю, так и быть держи:

uses
 ...

function HtmlHelp
 (hwndCaller: HWND;
 pszFile: String;
 uCommand: UINT;
 dwData: DWORD): Integer;
   stdcall;external "hhctrl.ocx"
   name "HtmlHelpA";

....
var
 Form1: TForm1;

const
 HH_HELP_CONTEXT = $000F;

procedure TForm1.Button1Click(Sender: TObject);
begin
 HtmlHelp(0, "Help.chm", HH_HELP_CONTEXT, 1);
end;


TBAPb ©   (07.05.06 6:40)
И еще: как из проекта делфи сделать независимое приложение?


А что, разве оно зависимое? От чего?


 
TBAPb ©   (2006-05-07 10:49) [3]

Когда я копирую иконку программы из папки с поектом в другую директорию и удаляю проект, иконка тоже удаляется. Значит, ее работа зависима от самого проекта, разве не так?


 
TBAPb ©   (2006-05-07 11:10) [4]

2Loginov Dmitry
Во-первых, спасибо, во-вторых, это не работает, в-третьих, че все это значит?


 
Loginov Dmitry ©   (2006-05-07 11:59) [5]

TBAPb ©   (07.05.06 10:49) [3]
Когда я копирую иконку программы из папки с поектом в другую директорию и удаляю проект, иконка тоже удаляется. Значит, ее работа зависима от самого проекта, разве не так?


Это бред.

TBAPb ©   (07.05.06 11:10) [4]
Во-первых, спасибо, во-вторых, это не работает, в-третьих, че все это значит?


Чтобы это заработало, нужно немного подумать, как им пользоваться. Если это так сложно, см п. [1]. Также можно воспользоваться справкой.


 
TBAPb ©   (2006-05-07 12:42) [6]

1) Я делаю save as и save project as в одну и ту же папку, там появляется иконка программы (светлая семерка), которую я копирую на рабочий стол. После удаления папки с проэктом она тоже удаляется. И это не бред, а суровая действительность.

2) Все, до чего я додумался - это заменить "help.chm" на "spravka.htm" и на "spravka.chm". Как я уже говорил, ничего невышло.
Если конкретно, то мне не понятно, что такое "hwndCaller: HWND; pszFile: String;  uCommand: UINT; dwData: DWORD): integer;
  stdcall;external "hhctrl.ocx"" и "$000F". Ты что, хочешь, чтобы я писал каждое из этих слов, нажимал F1, загружал в промт чертову кучу информации и пытался составить из нее осмысленный текст?
Можно тебя попросить просто объяснить мне, что к чему? Это же займет буквално пять предложений!


 
sniknik ©   (2006-05-07 13:14) [7]

> которую я копирую на рабочий стол.
это ярлык, к файлу имеет отношение только тем что на него ссылается, при удалении основного файла ярлык указывает в никуда, и чтото его у тебя в системе его удаляет (много вариантов/программ есть) как недействительный.
но это никак к независимости приложения сделанного в дельфи не относится.
(похоже ты не только дельфи но и комп только 3 месяца назад увидал... ;), хотя... были у меня знакомые бугалтерши и после пяти лет работы на компе копировали на дискету ярлычки документов, а не сами файлы... после дико удивлялись моему "глючному" компу который их документы не открывал... приносит к себе пробует - открывается ;), все обьяснения про ярлыки естественно мимо ушей.)

> что такое "hwndCaller: HWND; pszFile: String;  uCommand: UINT; dwData: DWORD): integer; stdcall;external "hhctrl.ocx""
это часть обьявления внешней процедуры, начинается с параметров (видно первые 2 слова понятны ;)

> и "$000F".
это ссылка внутри контекста (текста хелпа), что следует непосредственно из названия константы HH_HELP_CONTEXT

> Это же займет буквално пять предложений!
только при конкретном указании что непонятно, и желательно почему. при общем "че все это значит?" делаем вывод, что непоняино буквально все и требуется полный ликбез начиная с того что значит процедура, константы, синтаксис.... обьемы описания, ответа, не для форума, а для небольшой книжки.
домыслы же "это он знает, а вот это надо обьяснить" ведут к бесконечным веткам, в конце которых только (перед закрытием модератором) начинаеш понимать, надо было начинать с описаний терминов...


 
Шпиён   (2006-05-07 13:17) [8]


> 1) Я делаю save as и save project as в одну и ту же папку,
>  там появляется иконка программы (светлая семерка), которую
> я копирую на рабочий стол. После удаления папки с проэктом
> она тоже удаляется. И это не бред, а суровая действительность.
>

Скорее всего, при "копировании на рабочий стол" у тебя на рабочем столе появлятся ярлык программы. При удалении программы удаляется и ярлык.
Хочешь "независимости" - скопируй саму программу :Р

> 2) Все, до чего я додумался - это заменить "help.chm" на
> "spravka.htm" и на "spravka.chm". Как я уже говорил, ничего
> невышло.

И не выйдет. *.chm - это откомпилированный файл справки. Простым переименованием html-файла ты вряд ли его получишь.


 
Шпиён   (2006-05-07 13:22) [9]

ps

> Ты что, хочешь, чтобы я писал каждое из этих слов, нажимал
> F1, загружал в промт чертову кучу информации и пытался составить
> из нее осмысленный текст?

Именно так и следует поступатть, если хочешь чему-то научиться -) И учить английский.


 
TBAPb ©   (2006-05-07 13:52) [10]

В том-то и дело, что я не отправил ярлык на рабочий стол, а именно скопировал.

Что такое процедуры, функции и константы, я знаю. И что uses-это объявление внешней части процедуры, тоже. А вот  "hwndCaller: HWND; pszFile: String;  uCommand: UINT; dwData: DWORD): integer;
 stdcall;external "hhctrl.ocx"" и "$000F" для меня ровным счетом ничего не значат.

Про пять предложений - это я, конечно, загнул (чтобы Loginov Dmitry"я не пугать), но и на маленькую книжку это точно не потянет. Там всего лишь нужно объяснить значение каждого слова.

>это ссылка внутри контекста (текста хелпа), что следует непосредственно из названия константы HH_HELP_CONTEXT
Что за ссылка? На что она ссылается? Ее что, в контекст хелпа надо запихать? Ты объясни поподробнее, че ты воду мутишь?


 
TBAPb ©   (2006-05-07 13:55) [11]

Про chm я, кстати, тоже знаю. Просто от безысходности решил spravka.chm написать. А вдруг бы прокатило?


 
sniknik ©   (2006-05-07 15:03) [12]

> а именно скопировал.
значит скопировал ярлык.

> для меня ровным счетом ничего не значат.
вот про то и сказ, придется обьяснять азы не зная чего собственно ты знаеш и с какого уровня начинать... попытался с нормального, не получилось...

> но и на маленькую книжку это точно не потянет.
наоборот, теперь (после [10])  думаю "потянет" на среднюю. (с поправкой на "непонятливость")

>> #1 это ссылка внутри контекста (текста хелпа), что следует непосредственно из названия константы #2 HH_HELP_CONTEXT
> Что за ссылка? На что она ссылается? Ее что, в контекст хелпа надо запихать? Ты объясни поподробнее, #3 че ты воду мутишь?

допустим то что выше текст забитый в файл, # символ метки, если так, то тогда я могу не писать чтото, а указать метку. вроде ShowSomething(3) и выдаст оно мне то что по этой метке располагается (или начнет оттуда) - "че ты воду мутишь?"

необязательно устроено точно так, это упрощенный пример (для понимания что за переменная хватит. э... должно хватить). как именно сделано это в доке надо смотреть если интнресует внутреннее устройство.


 
TBAPb ©   (2006-05-07 16:28) [13]

А почему "$000F"? И какое отношение ссылка на текст документа имеет к открыванию этого документа?
Ладно, неважно. Поступлю в ВУЗ - мне там все объяснят. А пока переименую "spravk"у" в "readme" и уберу button2.

Теперь объясню поподробнее свою проблему с превращением проекта Delphi в приложение. В папке с проектом у меня десять файлов непонятного расширения, projecr2 (который открывает программу в делфи), ярлык (который запускает программу), spravka, два рисунка и еще два каких-то файла. Этот самый ярлык я копирую на рабочий стол, а дальше вы знаете...


 
sniknik ©   (2006-05-07 17:14) [14]

> А почему "$000F"?
какая разница? число оно и есть число... ну напиши HH_HELP_CONTEXT = 15; если тебе так больше нравится.

> Теперь объясню поподробнее свою проблему ....
нда. средней маловато будет... нужен талмуд размерами вроде "библии дельфи" ;о).
тебе что скомпилировать программу надо? (сделать exe-ник котрый без дельфей выполняется) ???
в меню project есть пункт build project, нажми, и если ошибок не будет иши файл projecr2.exe рядом с тем непонятного расширения (настроек проекта ведь не трогал? если трогал то по тому пути, что там установил).


 
TUser ©   (2006-05-07 18:01) [15]

> Что такое процедуры, функции и константы, я знаю. И что uses-это объявление внешней части процедуры, тоже.

:))))
Тебе лишь кажется, что ты все это знаешь. Не спорь, а то придут более едкие, чем пушистый и добродушный ТЮзер.


> Этот самый ярлык я копирую на рабочий стол, а дальше вы знаете...

А дальше тебе все объяснили. Ярлык - это сслыка. Шмакни по нему правой кнопкой мыши, посмотри в Свойства - увидешь, что ссылается он на экзешник. После удаления проекта, ярлык указывает на несуществующий файл.


 
Игорь Шевченко ©   (2006-05-07 23:41) [16]


> Ладно, неважно. Поступлю в ВУЗ - мне там все объяснят


Разумно. На этом дискуссию можно считать законченной и ветку смело закрывать.


 
Галинка ©   (2006-05-08 02:40) [17]

В следуюший раз, используй SDI Application. Там все уже готово, надо только файл подцепить.


 
Германн ©   (2006-05-08 03:03) [18]

Папка vs Каталог(Директория).
Файл vs Документ ("который открывает программу в делфи").
"ярлык (который запускает программу)" vs EXE-file.

Но самое главное - " В папке с проектом у меня десять файлов непонятного расширения".

>> Ладно, неважно. Поступлю в ВУЗ - мне там все объяснят
>Разумно. На этом дискуссию можно считать законченной и ветку смело закрывать.
А почему не закрыл?


 
Плохиш ©   (2006-05-08 11:20) [19]


> а то придут более едкие, чем пушистый и добродушный ТЮзер.

При прочтении данной ветки плякал, теперь из-за слёз ничего не вижу и писать не могу, пойду поищу огромный носовой платок.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.05.28;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.51 MB
Время: 0.01 c
2-1147146790
mctarik
2006-05-09 07:53
2006.05.28
Как выполнить AutoCheck всех пунктов MainMenu!


15-1146811361
Rulikkk
2006-05-05 10:42
2006.05.28
Ищу openSource компонент, для отображения блок схем.


1-1145436571
apl
2006-04-19 12:49
2006.05.28
Добавление компонентов! Подскажите!


15-1146583222
Новичоккк
2006-05-02 19:20
2006.05.28
Математическая задачка


2-1147424074
max32
2006-05-12 12:54
2006.05.28
delfi------->msword





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский