Проблемы при использование кода Delphi
Прочитал я эту статью (http://articles.org.ru/cfaq/index.php?qid=2117&frommostrecent=yes) и попытался включить в свой проект файл на Делфи.
Проблема вот в чем. Когда я перестраиваю прогу, то функция, содержащаяся в моем файле pas в него не записывается. Прописываю руками, но все равно ничего не работает.
В файле pas у меня ничего кроме функции. Вот его содержимое:
//***//
unit DateDialogFunc;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls;
implementation
{$ObjExportAll On}
// Функция для вызова окна, в котором пользователь выберет дату.
function strGetDateDialog :String;
var
AMsgDialog: TForm;
ADateTimePicker: TDateTimePicker;
begin
AMsgDialog := CreateMessageDialog('Укажите, пожалуйста, дату', mtInformation, [mbYes]);
ADateTimePicker:=TDateTimePicker.Create(AMsgDialog);
with AMsgDialog do
try
Caption := 'Выбор даты' ;
Height := 150;
with ADateTimePicker do
begin
// параметры строки с датой
Parent := AMsgDialog;
Top := 45;
Left := 70;
Width := 170;
end;
case ShowModal of
ID_YES:
//Form1.Edit1.Text:=DateToStr(ADateTimePicker.Date);
strGetDateDialog:=DateToStr(ADateTimePicker.Date);
// ;//здесь Ваш код после того как диалог будет закрыт
end;
finally
ADateTimePicker.Free;
AMsgDialog.Free;
end;
end;
end.
//***//
Так вот мне нужно, что бы в генерирующемся файле hpp была эта функция.
Жду ответов и рекомендаций. Заранее благодарен.
Теперь во чего пишет.
[C++ Error] LearnerFm.cpp(110): E2034 Cannot convert 'AnsiString (_fastcall *)()' to 'AnsiString'
вот на этот код: Edit1->Text=strGetDateDialog;
Но все в hpp прописал)) Правда ты (LuciferArh) не много ошибся)) Вот код:
unit DateDialogFunc;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls;
function strGetDateDialog :String;
implementation
{$ObjExportAll On}
function strGetDateDialog :String;
var
AMsgDialog: TForm;
//***//
Раз не работает с присвоением, то решил попробовать просто вызвать эту функцию, но ничего не работает... вот строка из hpp:
extern PACKAGE AnsiString __fastcall strGetDateDialog();
Просто ничего не происходит. Как будто процедура у кнопки пуста))) Хотя там написано:
strGetDateDialog;
Странно(
Во вторых - процедура у тебя действительно пустая. Чему удивляться?
Не, я просто предоставил тока часть кода. Функция должна вывести окно. Когда тестировал на Делфи все работало. Так же и делал - по нажатию на кнопку. А вот когда включил этот модуль в BCP - перестало работать.