Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.01.2015, 17:26   #1
jei_
Пользователь
 
Аватар для jei_
 
Регистрация: 22.11.2012
Сообщений: 33
По умолчанию как знать начало программы, функцию запуска?Если нету main()

Есть программа часов у неё есть 4 файла .cpp
Я не вижу не где функцию main или похожую.
Вопрос а как тогда узнать начало программы, функцию запуска?
Архив с программой прикрепил.
Вложения
Тип файла: rar clockmfc.rar (147.3 Кб, 10 просмотров)
jei_ вне форума Ответить с цитированием
Старый 30.01.2015, 18:52   #2
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,330
По умолчанию

MFC приложения не имеют main функции, вместо этого объявляется глобальная переменная определенного класса.
У вас это в ClockMFC.cpp, строка 39
waleri вне форума Ответить с цитированием
Старый 30.01.2015, 20:14   #3
jei_
Пользователь
 
Аватар для jei_
 
Регистрация: 22.11.2012
Сообщений: 33
По умолчанию

а как вы узнали что именно эта переменная CClockMFCApp

CClockMFCApp theApp;

и ещё вопрос а как вы находите тут классы
Код:
////////////////////////////////////////////////////////////////////////////////////
//
//			www.interestprograms.ru - программы, игры и их исходные коды
//
/////////////////////////////////////////////////////////////////////////////////////

// ClockMFC.cpp : Defines the class behaviors for the application.
//

#include "stdafx.h"
#include "ClockMFC.h"
#include "MainFrm.h"
#include ".\clockmfc.h"


#ifdef _DEBUG
#define new DEBUG_NEW
#endif


// CClockMFCApp

BEGIN_MESSAGE_MAP(CClockMFCApp, CWinApp)
	ON_COMMAND(ID_APP_ABOUT, OnAppAbout)
END_MESSAGE_MAP()


// CClockMFCApp construction

CClockMFCApp::CClockMFCApp()
{
	// TODO: add construction code here,
	// Place all significant initialization in InitInstance
}


// The one and only CClockMFCApp object

CClockMFCApp theApp;

// CClockMFCApp initialization

BOOL CClockMFCApp::InitInstance()
{
	// InitCommonControls() is required on Windows XP if an application
	// manifest specifies use of ComCtl32.dll version 6 or later to enable
	// visual styles.  Otherwise, any window creation will fail.
	InitCommonControls();

	CWinApp::InitInstance();

	// Initialize OLE libraries
	if (!AfxOleInit())
	{
		AfxMessageBox(IDP_OLE_INIT_FAILED);
		return FALSE;
	}
	AfxEnableControlContainer();
	// Standard initialization
	// If you are not using these features and wish to reduce the size
	// of your final executable, you should remove from the following
	// the specific initialization routines you do not need
	// Change the registry key under which our settings are stored
	// TODO: You should modify this string to be something appropriate
	// such as the name of your company or organization
	SetRegistryKey(_T("Local AppWizard-Generated Applications"));
	// To create the main window, this code creates a new frame window
	// object and then sets it as the application's main window object
	CMainFrame* pFrame = new CMainFrame;
	if (!pFrame)
		return FALSE;
	m_pMainWnd = pFrame;
	// create and load the frame with its resources
	//pFrame->LoadFrame(IDR_MAINFRAME,
		//WS_OVERLAPPEDWINDOW | FWS_ADDTOTITLE, NULL,
		//NULL);

	// —оздаем главное окно приложени¤ (окно фрейма).
	pFrame->Create(NULL, "ѕылеводонепроницаемые часы");

	// ”станавливаем иконку дл¤ приложени¤.
	HICON iconapp = LoadIcon(IDI_APP);
	pFrame->SetIcon(iconapp, FALSE);

	// The one and only window has been initialized, so show and update it
	pFrame->ShowWindow(SW_SHOW);
	pFrame->UpdateWindow();
	// call DragAcceptFiles only if there's a suffix
	//  In an SDI app, this should occur after ProcessShellCommand
	return TRUE;
}


// CClockMFCApp message handlers



// CAboutDlg dialog used for App About

class CAboutDlg : public CDialog
{
public:
	CAboutDlg();

// Dialog Data
	enum { IDD = IDD_ABOUTBOX };

protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support

// Implementation
protected:
	DECLARE_MESSAGE_MAP()
};

CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
{
}

void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
}

BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
END_MESSAGE_MAP()

// App command to run the dialog
void CClockMFCApp::OnAppAbout()
{
	CAboutDlg aboutDlg;
	aboutDlg.DoModal();
}
jei_ вне форума Ответить с цитированием
Старый 30.01.2015, 21:09   #4
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,330
По умолчанию

Ищем класс, который наследует CWinApp, где этот класс используется.
waleri вне форума Ответить с цитированием
Старый 01.02.2015, 12:55   #5
jei_
Пользователь
 
Аватар для jei_
 
Регистрация: 22.11.2012
Сообщений: 33
По умолчанию

а где вы смотрите как наследуется класс CWinApp,
здесь?

Код:
BEGIN_MESSAGE_MAP(CClockMFCApp, CWinApp)
	ON_COMMAND(ID_APP_ABOUT, OnAppAbout)
END_MESSAGE_MAP()
jei_ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как вызвать функцию в main'е sandra1611 Помощь студентам 9 26.10.2013 13:18
Как на нетбук установить систему если нету куда пихнуть диск? Abuhamed Компьютерное железо 3 05.02.2012 21:53
как удалить строку из combobox, если такая уже есть и добавить в начало новую? codermoder Общие вопросы Delphi 6 14.01.2011 17:33
Запрет запуска программы на VBA в случае если Excel уже открыт kovalevskivf Microsoft Office Excel 4 01.09.2009 11:22
Если нету Flash то IMG!?!?!?! DRUG_ADDICT HTML и CSS 5 27.02.2008 01:23