Вниз
Скачать: CL | DM;

Application.title в файле проекта   Найти похожие ветки 

← →
Андрей Молчанов   (2005-07-31 21:51) [0]

Здравствуйте!

Почему нельзя считать свойство Application.title из тела проекта, а если можно, то как.


← →
Андрей Молчанов   (2005-07-31 21:57) [1]

Забыл добавить пожалуйста. Пожалуйста!


← →
Гаврила ©   (2005-07-31 21:57) [2]

Почему нельзя? можно


← →
Андрей Молчанов   (2005-07-31 22:03) [3]

Лежит в проекте процедура. Если в ней напечатать application.title, кнопка Скомпилировать отключется :(


← →
Андрей Молчанов   (2005-07-31 22:15) [4]

Вот код:

//{$DEFINE RELEASE}
//{$DEFINE OriginalVersion}

program PowerBackup;

uses
 Forms,
 Dialogs,
 SysUtils,
 Graphics,
 Unit1 in "Unit1.pas" {frmPassword},
 Unit2 in "Unit2.pas" {frmPowerBackupMain},
 Unit3 in "Unit3.pas" {frmOptions},
 Unit5 in "Unit5.pas" {frmBackup},
 Unit6 in "Unit6.pas" {frmReport},
 Unit7 in "Unit7.pas" {frmNagScreen},
 Unit8 in "Unit8.pas" {frmEnterKey},
 Unit10 in "Unit10.pas" {frmNewItemWizard},
 Unit14 in "Unit14.pas" {TaskBar: TFrame},
 Unit13 in "Unit13.pas" {frmAbout},
 Unit15 in "Unit15.pas" {frmProperties},
 PBOnceOnly in "PBOnceOnly.pas" {PBOnceOnly},
 Unit4 in "Unit4.pas" {dmMain: TDataModule},
 Unit9 in "Unit9.pas" {frmRestoreWizard},
 Unit11 in "Unit11.pas" {frmRequestNextPart},
 Unit12 in "Unit12.pas" {frmFileSpecificSettings},
 RC6 in "RC6.pas";

type
 TProcedure = procedure;

{$R *.res}
{$R My.res}

resourcestring
 UnregisteredTitle = "%s - The evaluation period will expire in %d days";
 UnregisteredLabel = "Evaluation period has expired.";

procedure ExecuteApplication;
begin
 Application.CreateForm(TfrmPowerBackupMain, frmPowerBackupMain);
 frmPowerBackupMain.Caption := Format(UnregisteredTitle, [Application.Title, TrialDaysLeft]);
end;
exports ExecuteApplication;

procedure ExecuteTrial;
begin
 Application.CreateForm(TfrmNagScreen, frmNagScreen);
end;
exports ExecuteTrial;

const
{$IFDEF RELEASE}
 ASProtectRunApplication : TProcedure = ExecuteTrial;
{$ELSE}
 ASProtectRunApplication : TProcedure = ExecuteApplication;
{$ENDIF}

procedure GetRunApplicationFunction(Ptr : TProcedure);stdcall;
begin
 ASProtectRunApplication := Ptr;
end;
exports GetRunApplicationFunction;

begin
 Application.CreateForm(TdmMain, dmMain);
 if AlreadyRunning(dmMain.ProcessName) then Halt;
 Application.Initialize;
 {$IFDEF OriginalVersion}
 Application.Title := "Power Backup";
 {$ELSE}
 Application.Title := "Новое название";
 {$ENDIF}

 Application.HelpFile := "help.chm";
 ASProtectRunApplication;
 Application.Run;
end.


← →
Гаврила ©   (2005-07-31 22:16) [5]

Видимо, глюки IDE
перенеси в отдельный модуль, вызов оставь в теле проекта


← →
Anatoly Podgoretsky ©   (2005-07-31 22:16) [6]

Ну возможно у тебя ошибка.


← →
Андрей Молчанов   (2005-07-31 22:17) [7]

А где?
В frmPowerBackupMain.Caption := Format(UnregisteredTitle, [Application.Title, TrialDaysLeft]); ?


← →
Гаврила ©   (2005-07-31 22:19) [8]

Среда крайне не любит ручной правки файла проекта
Старайся в модуле DPR никакой логики не держать


← →
Андрей Молчанов   (2005-07-31 22:20) [9]


> Старайся в модуле DPR никакой логики не держать

А жаль, там так удобно получается...


← →
GuAV ©   (2005-07-31 22:22) [10]


> {$IFDEF OriginalVersion}
> Application.Title := "Power Backup";
> {$ELSE}
> Application.Title := "Новое название";
>  {$ENDIF}

Application.Title := "Power Backup";
{$IFDEF OriginalVersion}
{$ELSE}
with Application do Title := "Новое название";
{$ENDIF}


← →
Андрей Молчанов   (2005-07-31 22:24) [11]


> GuAV ©

Не помогает :(


← →
Гаврила ©   (2005-07-31 22:27) [12]

А еще больше среда не любит в файле DPR директив компилятору)
Их можно понять, они этот файл генерят сами, а потом по нему еще и ориентируются, не ожидая, что ты поправил их творение.
Глюк? да, но что делать ...
так что выноси все свое хозяйство в другой модуль


← →
Андрей Молчанов   (2005-07-31 22:29) [13]

Похоже придется :) А жаль, все так красиво было...


← →
sniknik ©   (2005-07-31 23:34) [14]

Андрей Молчанов   (31.07.05 22:24) [11]
>> GuAV ©
> Не помогает :(
должно... просто этот забыл...
procedure ExecuteApplication;
begin
Application.CreateForm(TfrmPowerBackupMain, frmPowerBackupMain);
frmPowerBackupMain.Caption := Format(UnregisteredTitle, [Application.Title, TrialDaysLeft]);
end;


сделай типа
with Application do st:= Title;
Form1.Caption := Format(UnregisteredTitle, [st, TrialDaysLeft]);
(везде должно быть так)


← →
Андрей Молчанов   (2005-07-31 23:52) [15]

Спасибо большое!!! :)

Все скомпилировалось вот в таком варианте
with Application do Form1.Caption := Format(UnregisteredTitle, [Title, TrialDaysLeft]);


← →
Amoeba ©   (2005-08-01 14:36) [16]

Как раз статья по даннному вопросу:
http://www.delphikingdom.com/asp/viewitem.asp?catalogid=765



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

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.042 c
3-1121239183
cvg
2005-07-13 11:19
2005.08.21
Почему может быть не найдено поле?


14-1122647631
Alexon
2005-07-29 18:33
2005.08.21
Работа с TServerSocket/TClientSocket


1-1123129297
Kara
2005-08-04 08:21
2005.08.21
Ошибка SQL


14-1122466533
Lexer
2005-07-27 16:15
2005.08.21
Кляп удаленному компьютеру


5-1093596786
Salivan
2004-08-27 12:53
2005.08.21
TTreeView + MultiSelect ? это возможно?




   Наверх