Консультация № 173426
19.10.2009, 12:47
0.00 руб.
0 6 1
Уважаемые эксперты,
в Builder 6 создаю проект. В нем создаю форму. Все работает. Потом закрываю все.
При попытке открыть этот проект я вижу файл с содержимым, как в приложении. Исходную форму мне никак не получается отобразить.
Что делать?

Приложение:

#include <vcl.h>
#pragma hdrstop
//---------------------------------------------------------------------------
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
try
{
Application->Initialize();
Application->CreateForm(__classid(TForm1), &Form1);
Application->Run();
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
catch (...)
{
try
{
throw Exception("");
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
}
return 0;
}
//-------------------------------------

Обсуждение

Неизвестный
20.10.2009, 18:09
общий
это ответ
Здравствуйте, Warobushek.
файл, который надо открывать имеет расширение bpr (Project1.bpr). Вы же открываете Project1.cpp.
Можно запустить C++Builder и там выбрать в меню File -> Open Project
5
Спасибо
Неизвестный
21.10.2009, 19:48
общий
Я делаю именно так, как Вы и описали.
Открывается именно проект, но отображается только cpp файл. Не пойму, в чем дело. Мистика.)
Неизвестный
21.10.2009, 19:57
общий
Warobushek:
Цитата: 144616
Открывается именно проект, но отображается только cpp файл.

Откройте ваш Project1.bpr в блокноте и покажите что там написано...
Если у вас не видно расширения, то зайдите в проводнике (Explorer) в меню: Сервис - Свойства папки - Вид и снимите галочку "скрывать расширение для зарегистрированных типов файлов"

В открытом C++Builder, откройте Ваш проект (Project1.bpr), посмотрите есть ли вкладка Unit1.cpp (и есть ли такой файл вообще в каталоге где лежит проект)...
---------------------------------
Ну или, откройте C++Builder и просто создайте новый проект (Application) и сохраните в любой [b]отдельный каталог[/b], должно быть как минимум
Project1.bpr
Project1.cpp
Project1.res
Unit1.cpp
Unit1.dfm
Unit1.h

--------------------------------
Сравните, что в Вашем проекте не так.. Возможно, Вы в процессе сохранения что-то не так и не туда сохранили..
Неизвестный
22.10.2009, 10:19
общий
Unit1.cpp нет. В каталоге есть файлы:

Railway.bpr
Railway.cpp
Railway.res
Railway.obj
Railway.dfm
Railway.~cpp
Railway.~dfm
Railway.~h



Railway.bpr
Код:
<?xml version='1.0' encoding='utf-8' ?>
<!-- C++Builder XML Project -->
<PROJECT>
<MACROS>
<VERSION value="BCB.06.00"/>
<PROJECT value="Railway.exe"/>
<OBJFILES value="Railway.obj"/>
<RESFILES value="Railway.res"/>
<IDLFILES value=""/>
<IDLGENFILES value=""/>
<DEFFILE value=""/>
<RESDEPEN value="$(RESFILES)"/>
<LIBFILES value=""/>
<LIBRARIES value=""/>
<SPARELIBS value="vcl.lib rtl.lib"/>
<PACKAGES value="vcl.bpi rtl.bpi dbrtl.bpi adortl.bpi vcldb.bpi vclx.bpi bdertl.bpi
vcldbx.bpi ibxpress.bpi dsnap.bpi cds.bpi bdecds.bpi qrpt.bpi teeui.bpi
teedb.bpi tee.bpi dss.bpi teeqr.bpi visualclx.bpi visualdbclx.bpi
dsnapcrba.bpi dsnapcon.bpi bcbsmp.bpi vclie.bpi xmlrtl.bpi inet.bpi
inetdbbde.bpi inetdbxpress.bpi inetdb.bpi nmfast.bpi webdsnap.bpi
bcbie.bpi websnap.bpi soaprtl.bpi dclocx.bpi dbexpress.bpi dbxcds.bpi
indy.bpi bcb2kaxserver.bpi"/>
<PATHCPP value=".;"/>
<PATHPAS value=".;"/>
<PATHRC value=".;"/>
<PATHASM value=".;"/>
<DEBUGLIBPATH value="$(BCB)\lib\debug"/>
<RELEASELIBPATH value="$(BCB)\lib\release"/>
<LINKER value="ilink32"/>
<USERDEFINES value="_DEBUG"/>
<SYSDEFINES value="_RTLDLL;NO_STRICT;USEPACKAGES"/>
<MAINSOURCE value="Railway.cpp"/>
<INCLUDEPATH value="$(BCB)\include;$(BCB)\include\vcl"/>
<LIBPATH value="$(BCB)\lib\obj;$(BCB)\lib"/>
<WARNINGS value="-w-par"/>
<OTHERFILES value=""/>
</MACROS>
<OPTIONS>
<IDLCFLAGS value="-src_suffix cpp -D_DEBUG -I$(BCB)\include -I$(BCB)\include\vcl -boa"/>
<CFLAG1 value="-Od -H=$(BCB)\lib\vcl60.csm -Hc -Vx -Ve -X- -r- -a8 -b- -k -y -v -vi- -c
-tW -tWM"/>
<PFLAGS value="-$YD -$W -$O- -$A8 -v -JPHNE -M"/>
<RFLAGS value=""/>
<AFLAGS value="/mx /w2 /zd"/>
<LFLAGS value="-D"" -aa -Tpe -x -Gn -v"/>
<OTHERFILES value=""/>
</OPTIONS>
<LINKER>
<ALLOBJ value="c0w32.obj $(PACKAGES) Memmgr.Lib sysinit.obj $(OBJFILES)"/>
<ALLRES value="$(RESFILES)"/>
<ALLLIB value="$(LIBFILES) $(LIBRARIES) import32.lib cp32mti.lib"/>
<OTHERFILES value=""/>
</LINKER>
<FILELIST>
<FILE FILENAME="Railway.res" FORMNAME="" UNITNAME="Railway.res" CONTAINERID="ResTool" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="Railway.cpp" FORMNAME="" UNITNAME="Railway" CONTAINERID="CCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="Railway.cpp" FORMNAME="Form1" UNITNAME="Railway" CONTAINERID="CCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
</FILELIST>
<BUILDTOOLS>
</BUILDTOOLS>

<IDEOPTIONS>
[Version Info]
IncludeVerInfo=0
AutoIncBuild=0
MajorVer=1
MinorVer=0
Release=0
Build=0
Debug=0
PreRelease=0
Special=0
Private=0
DLL=0
Locale=1049
CodePage=1251

[Version Info Keys]
CompanyName=
FileDescription=
FileVersion=1.0.0.0
InternalName=
LegalCopyright=
LegalTrademarks=
OriginalFilename=
ProductName=
ProductVersion=1.0.0.0
Comments=

[Debugging]
DebugSourceDirs=$(BCB)\source\vcl

[Parameters]
RunParams=
Launcher=
UseLauncher=0
DebugCWD=
HostApplication=
RemoteHost=
RemotePath=
RemoteLauncher=
RemoteCWD=
RemoteDebug=0

[Compiler]
ShowInfoMsgs=0
LinkDebugVcl=0
LinkCGLIB=0

[CORBA]
AddServerUnit=1
AddClientUnit=1
PrecompiledHeaders=1

[Language]
ActiveLang=
ProjectLang=
RootDir=
</IDEOPTIONS>
</PROJECT>


Railway.~cpp
Код:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "Railway.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
Неизвестный
22.10.2009, 10:22
общий
Создал новый проект, сохранил, закрыл. Открывается нормально.
Файлы
Project1.bpr
Project1.cpp
Project1.res
Unit1.cpp
Unit1.dfm
Unit1.h

есть.

Похоже проблема в том, что я файлу unit1.cpp давал название "проект".cpp .
Из-за этого возникла проблема?
Неизвестный
22.10.2009, 16:51
общий
Warobushek:
Цитата: 144616
Из-за этого возникла проблема?

Конечно
Обычно, имя файла проекта - это название программы, а вот файлы исходников естественно именуются иначе, например MainUnit.cpp и т.д. Их же может быть много, и следовательно, надо давать имена понятные, со смыслом.. как правило, делают разделение, например, добовляют префикс u
В Вашем случае:

Railway.bpr
Railway.cpp // это файл модуля main
Railway.res
uRailway.cpp // это файл модуля формы
uRailway.dfm
uRailway.h
Форма ответа