xref: /aosp_15_r20/external/mdnsresponder/mDNSWindows/DNSServiceBrowser/WindowsCE/Sources/Application.cpp (revision 48a54d368dc4fa860885eef7b70b6c53499e7c25)
1*48a54d36SAndroid Build Coastguard Worker /* -*- Mode: C; tab-width: 4 -*-
2*48a54d36SAndroid Build Coastguard Worker  *
3*48a54d36SAndroid Build Coastguard Worker  * Copyright (c) 2002-2004 Apple Computer, Inc. All rights reserved.
4*48a54d36SAndroid Build Coastguard Worker  *
5*48a54d36SAndroid Build Coastguard Worker  * Licensed under the Apache License, Version 2.0 (the "License");
6*48a54d36SAndroid Build Coastguard Worker  * you may not use this file except in compliance with the License.
7*48a54d36SAndroid Build Coastguard Worker  * You may obtain a copy of the License at
8*48a54d36SAndroid Build Coastguard Worker  *
9*48a54d36SAndroid Build Coastguard Worker  *     http://www.apache.org/licenses/LICENSE-2.0
10*48a54d36SAndroid Build Coastguard Worker  *
11*48a54d36SAndroid Build Coastguard Worker  * Unless required by applicable law or agreed to in writing, software
12*48a54d36SAndroid Build Coastguard Worker  * distributed under the License is distributed on an "AS IS" BASIS,
13*48a54d36SAndroid Build Coastguard Worker  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14*48a54d36SAndroid Build Coastguard Worker  * See the License for the specific language governing permissions and
15*48a54d36SAndroid Build Coastguard Worker  * limitations under the License.
16*48a54d36SAndroid Build Coastguard Worker  */
17*48a54d36SAndroid Build Coastguard Worker 
18*48a54d36SAndroid Build Coastguard Worker #include	"stdafx.h"
19*48a54d36SAndroid Build Coastguard Worker 
20*48a54d36SAndroid Build Coastguard Worker #include	"DNSServices.h"
21*48a54d36SAndroid Build Coastguard Worker 
22*48a54d36SAndroid Build Coastguard Worker #include	"BrowserDialog.h"
23*48a54d36SAndroid Build Coastguard Worker 
24*48a54d36SAndroid Build Coastguard Worker #include	"Application.h"
25*48a54d36SAndroid Build Coastguard Worker 
26*48a54d36SAndroid Build Coastguard Worker #ifdef _DEBUG
27*48a54d36SAndroid Build Coastguard Worker #define new DEBUG_NEW
28*48a54d36SAndroid Build Coastguard Worker #undef THIS_FILE
29*48a54d36SAndroid Build Coastguard Worker static char THIS_FILE[] = __FILE__;
30*48a54d36SAndroid Build Coastguard Worker #endif
31*48a54d36SAndroid Build Coastguard Worker 
32*48a54d36SAndroid Build Coastguard Worker //===========================================================================================================================
33*48a54d36SAndroid Build Coastguard Worker //	Message Map
34*48a54d36SAndroid Build Coastguard Worker //===========================================================================================================================
35*48a54d36SAndroid Build Coastguard Worker 
36*48a54d36SAndroid Build Coastguard Worker BEGIN_MESSAGE_MAP(Application, CWinApp)
37*48a54d36SAndroid Build Coastguard Worker 	//{{AFX_MSG_MAP(Application)
38*48a54d36SAndroid Build Coastguard Worker 		// NOTE - the ClassWizard will add and remove mapping macros here.
39*48a54d36SAndroid Build Coastguard Worker 		//    DO NOT EDIT what you see in these blocks of generated code!
40*48a54d36SAndroid Build Coastguard Worker 	//}}AFX_MSG_MAP
41*48a54d36SAndroid Build Coastguard Worker END_MESSAGE_MAP()
42*48a54d36SAndroid Build Coastguard Worker 
43*48a54d36SAndroid Build Coastguard Worker //===========================================================================================================================
44*48a54d36SAndroid Build Coastguard Worker //	Globals
45*48a54d36SAndroid Build Coastguard Worker //===========================================================================================================================
46*48a54d36SAndroid Build Coastguard Worker 
47*48a54d36SAndroid Build Coastguard Worker Application		gApp;
48*48a54d36SAndroid Build Coastguard Worker 
49*48a54d36SAndroid Build Coastguard Worker //===========================================================================================================================
50*48a54d36SAndroid Build Coastguard Worker //	Application
51*48a54d36SAndroid Build Coastguard Worker //===========================================================================================================================
52*48a54d36SAndroid Build Coastguard Worker 
Application()53*48a54d36SAndroid Build Coastguard Worker Application::Application()
54*48a54d36SAndroid Build Coastguard Worker 	: CWinApp()
55*48a54d36SAndroid Build Coastguard Worker {
56*48a54d36SAndroid Build Coastguard Worker 	//
57*48a54d36SAndroid Build Coastguard Worker }
58*48a54d36SAndroid Build Coastguard Worker 
59*48a54d36SAndroid Build Coastguard Worker //===========================================================================================================================
60*48a54d36SAndroid Build Coastguard Worker //	InitInstance
61*48a54d36SAndroid Build Coastguard Worker //===========================================================================================================================
62*48a54d36SAndroid Build Coastguard Worker 
InitInstance()63*48a54d36SAndroid Build Coastguard Worker BOOL Application::InitInstance()
64*48a54d36SAndroid Build Coastguard Worker {
65*48a54d36SAndroid Build Coastguard Worker 	DNSStatus			err;
66*48a54d36SAndroid Build Coastguard Worker 	BrowserDialog		dialog;
67*48a54d36SAndroid Build Coastguard Worker 	BOOL				dnsInitialized;
68*48a54d36SAndroid Build Coastguard Worker 
69*48a54d36SAndroid Build Coastguard Worker 	dnsInitialized = FALSE;
70*48a54d36SAndroid Build Coastguard Worker 
71*48a54d36SAndroid Build Coastguard Worker 	err = DNSServicesInitialize( kDNSFlagAdvertise, 0 );
72*48a54d36SAndroid Build Coastguard Worker 	if( err )
73*48a54d36SAndroid Build Coastguard Worker 	{
74*48a54d36SAndroid Build Coastguard Worker 		AfxMessageBox( IDP_SOCKETS_INIT_FAILED );
75*48a54d36SAndroid Build Coastguard Worker 		goto exit;
76*48a54d36SAndroid Build Coastguard Worker 	}
77*48a54d36SAndroid Build Coastguard Worker 	dnsInitialized = TRUE;
78*48a54d36SAndroid Build Coastguard Worker 
79*48a54d36SAndroid Build Coastguard Worker 	// Display the main browser dialog.
80*48a54d36SAndroid Build Coastguard Worker 
81*48a54d36SAndroid Build Coastguard Worker 	m_pMainWnd = &dialog;
82*48a54d36SAndroid Build Coastguard Worker 	dialog.DoModal();
83*48a54d36SAndroid Build Coastguard Worker 
84*48a54d36SAndroid Build Coastguard Worker 	// Dialog has been closed. Return false to exit the app and not start the app's message pump.
85*48a54d36SAndroid Build Coastguard Worker 
86*48a54d36SAndroid Build Coastguard Worker exit:
87*48a54d36SAndroid Build Coastguard Worker 	if( dnsInitialized )
88*48a54d36SAndroid Build Coastguard Worker 	{
89*48a54d36SAndroid Build Coastguard Worker 		DNSServicesFinalize();
90*48a54d36SAndroid Build Coastguard Worker 	}
91*48a54d36SAndroid Build Coastguard Worker 	return( FALSE );
92*48a54d36SAndroid Build Coastguard Worker }
93