4thsemvp

Upload: riz-wan

Post on 08-Apr-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/6/2019 4thsemvp

    1/20

    CS1253 -Visual programming

    S4 CSEUnit I

    Windows Programming

    1. What is Windows Programming?

    Windows Programming uses GUI concept. It is an event-driven Programming. An

    Application Window will respond to the events by generating a message by the Operating

    System. It uses graphics for organizing user workspace. Programs that run withinWindows also use GUI. eg : Word, Excel. These application programs use some built- in

    functions present in API.

    2. List the main header files in Windows Programming?

    WINDOWS.H

    WINDEF.HWINNT.HWINBASE.HWINUSER.H

    WINGDI.H

    3. What is Hungarian Notation?

    The naming convention for windows programming is called as Hungarian Notation. Inthis notation the variable names are preceded with key letters. The key letters describe the

    type of data the variable represents.

    Eg.h handle

    The steps required to create a window are,

    a. Registering Window Classb. Create a Windowc. Message Loopd. Window Procedure

    5. How to register a window class?

    Before creating an application window the window class must be registered. Windows

    class is registered by calling register class. The function requires a single parameter,

  • 8/6/2019 4thsemvp

    2/20

    which is a pointer to structure of, type WNDCLASS.

    6. What is a window class?

    A window is always created using a window class. The window class identifies the

    window procedure that processes messages to the window. The window class defines thewindow procedure and some other characterizing of window that created based on the

    class.

    7. How to create a window?

    Create window(): This command allows to specify more detailed information about the

    window.Syntax:

    Create window(szWin Name,Title,WS_OVERLAPPEDWINDOW);

    8. Define message loop?

    When a windows program begins execution, a window create a message queue for the

    program; this message queue stores message to all the windows a program; this messagequeue stores messages to all the windows a program might create. A window application

    includes is short check of code called the message loop to the appropriate window

    procedure. A simple message to enters of one function call to each of three function,GetMessage, TrabslateMessage and DispatchMessage

    9. What is the use of GetMessage?

    The GetMessage function retrieves a message from the queue and copies it to a structure

    to Type MSQ.

    10. What is the use of TranslateMessage?

    A message Loop include TranslateMessage., if the message loop receive character input

    11. What is the use of Dispatch Message?

    The Dispatch Message function sends a message to the window procedure associated

    with the window handle specified in the MSG structure.

    12. What are the actions of windows procedure?

    The windows procedure is the function named Wndproc. The window procedure

    determines what the window displays in its client area the windows responds to userinput.

  • 8/6/2019 4thsemvp

    3/20

    13. What is WM_PAINT message?

    The message informs when a part or all of the windows client area is invalid and must

    be updated which means that it must be redrawn or painted.

    14. How does WM_PAINT message is processed?

    WM_PAINT processing almost always begin with a call to Begin Paint.

    hdcBeginPaint(hwnd,&Ps);and ends with a call to EndPaint

    EndPaint(hwnd,&Ps);

    BeginPaint erases the backroundEndPaint releases the device context handle.

    15. What is WM_DESTROY message?

    WM_DESTROY message indicates that a window is in the process of destroying a

    window based on a command from the user. The message is a result of the user clicking

    on the close button or selecting close from the programs System message.

    16. How the program is terminated?

    When the postQuit message function is invoked it inserts a WM_QUIT message in the

    Programs message queue. GetMessage returns aero for WM_QUIT message. Thiscauses WinMain to drop put of the Message Loop. The program then returnsmsgWParam, The program terminated.

    17. What is GDI?

    The Graphics Device Interface (GDI) provides functions and related structures that an

    application can use to generate graphical output for displays, printers and other devices.

    A keystroke or combination of keystrokes that sends a command message to the specifiedapplication window is called a keyboard accelerator.

    The messages generated are,

    i)ii)

    WM_KEYUPWM_KEYDOWN

    iii) WM_COMMANDiv) WM_SYSCOMMANDv) WM_SYSKEYDOWNvi) WM_SYSKEYUP

  • 8/6/2019 4thsemvp

    4/20

    19. What are the types of messages generated by a mouse?

    Two types of messages generated by a mouse.

    i)ii)

    Client area mouse message

    Non- client area mouse message

    20. What is a menu? What are its types?

    A menu is a GUI, which contains a list of menu items. The types of menu are,

    1. System Menus2. Popup Menu

    3. Dropdown Menu

    21. What are the functions of message box function?

    Message Box function is used to deliver text output to user. The function creates awindow, but it is a special purpose window of limited flexibility. The message box

    window has a title bar with a close button an optional icon, one or more lines of text.

    22. What are the fields in MSG structure?

    HWND:- The handle to the window which the message is directed toMWSSAGE:- The message identifier. This is a number that identified the message.WPARAM:- A 32-bit message parameter the meaning and value of which depend on

    the particular message.LPARAM:- Another 32-bit message parameter dependent on the message.TIME:- The time the message was place in message queue.

    PT:- The mouse coordinates at the time the message was placed.

    23. What are queued and non queued messages?

    The queued messaged are those that are placed in a programs message queue by

    windows. The non queued messages are posted to a message queue. The non queued

    24. Write short notes on status bar?

    The status bar window neither accepts user input nor generates command messages. Its

    job is simply to display text in panes under program control the status bar supports two

    types of panes.-Text panes- message line panes

    -Status indicator panes

    25. Give some messages used in windows?

    WM_CREATE : This message is sent when a window is being created.

  • 8/6/2019 4thsemvp

    5/20

    WM_LBUTTONDOWN : This message is sent when the user press the left.

    WM_CHAR : This message is sent when the user types a character.

    WM_CLOSE : This message is sent when the user closes a window.WM_COMMAND : This message is sent to appropriate window in response to user

    menu choices, dialog button clicks and so on.

    UNIT II

    1. Define Appwizard

    Appwizard is a code generator used to create a working skeleton for the windows with

    features source code and features specified through dialog boxes.

    2. What are the types of mapping modes?

    MM_HIMETRIC

    MM_ANISOTROPICMM_ISOTROPIC

    3. What is the use of SetMapMode command?

    It is used to return the previous mapping mode and sets the mapping mode specified in

    the parameter.Syntax:

    Virtual int setMapMode(int nMapMode)

    4. List the types of video cards used to display the colors

    256 color video card(8 bit)16 bit color video card24 bit color video card

    5. What is

    resole font?

    The system font is the font that windows uses by default for text string like strings in title

    bars, menus and dialog boxes. The system font is a razor font which means that the

    characters are defined as block of pixels. The size of the character in the system font is

    based on the size of title video display.

    6. What is the use of get system metrics function?

    The function retrieves information about the size of various graphical item in windows

    such as icon, occurs, title bars and scroll bars. This function is an important function forachieving device independent graphical outline in the program. This needs a single

  • 8/6/2019 4thsemvp

    6/20

    argument called an index. This function returns an integer usually the size of the item

    specified in the argument.

    7. Explain the display context classes CClientDC and CWindowDC?

    Windows client area excludes the border, the caption bar, and the menu bar. If weconstruct an object of class CclientDc, the point(0,0) is at the upper-left corner of the

    client area. If we construct an object of class CWindowDC the point(0,0) is the upper- left

    corner of the nonclient area.

    8. What is the state of the device context?

    The current state of the device context includes the following:

    Attached GDI drawing objects such as pens, brushes, and fonts.

    The mapping mode that determines the scale of items when they are drawn.

    Various details such as text alignment parameters and polygon filling mode.

    9. What are GDI objects?

    A window GDI object type is represented by an MFC library class. CGdiObject is the

    abstract base for the GDI object classes. A c++ object of a class derived from

    CGdiObject represents a windows GDI object.

    10. Mention some of the GDI derived classes?

    CBitmapCBrushCFontCPaletteCPenCRgn

    11. Difference between modal and modeless dialogs?

    The VDialog base class supports both modal and modeless dialog. With a modal dialog,

    such as file dialog, the user cannot work elsewhere in the same application until thedialog is closed.With the modeless dialog, the user can work in another window in the application while

    the dialog remains on the screen. Eg : Find and replace dialog.

    12. What is system modaldialog?

    The 16-bit versions of windows support a special kind of modal dialog called a system

  • 8/6/2019 4thsemvp

    7/20

    modal dialog, which prevents the user from switching to another application. Win32 also

    supports system modal dialogs but with weird result: the user can switch to another

    application, but the dialog remains as the top window.

    13. List some of the COMDLG32 classes?

    CColorDialogCFileDialogCFindReplaceDialogCPageSetupDialogCFontDialogCPirntDialog

    14. What are dialog controls?

    A dialog contains a number of elements called controls.

    Dialog controls include:

    Edit controls, Buttons. List boxes, Combo boxes, Static text, Tree views,progress

    indicators, Sliders.

    15. Mention some of the windowa common control?

    The progress indicator control.

    The track bar control.

    The spin button control.

    The list control.

    The tree control.

    UNIT III

    1. What is keyboard accelerator?

    The keyboard accelerator resource consists of a table of key combinations with associated

    command ids a keyboard accelerator entry does not have to be associated with a menu

    item.

  • 8/6/2019 4thsemvp

    8/20

    2. What are the two text editing tools?

    Windows itself supplies two text editing tools edit control and windows rich edit

    common control both can be used as controls within dialogs. But both can also be made

    to look like view windows. The MFC library supports this versatility with the

    CEDITVIEW and CRICHEDIT VIEW CLASSES.

    THE CEDITVIEW CLASS:- This class is based on the windows edit control so it

    inherits all the edit limitations.

    THE CRICHEDITVIEW CLASS:- This class is based on the rich edit control so it

    supports mixed formats and large quantities of text.

    3. What are the steps to be followed to build floating popup menus

    i)

    ii)

    Use the menu editor to insert a new, empty menu in your projects resource

    file.Type some characters in the left top- level item, and then add your menu item

    in the resulting pop-up menu.

    iii) Use class wizard to add a WM_CONTEXTMENU message handler in yourview class that receives mouse-click messages.

    4. What are the characteristic of SDI frame window?

    SDI (single document interface) frame window has the following characteristic.

    Window Size Window Position

    Window status Windows Status Toolbar and status bar enablement and position.

    5. What are the functions that treat registry data as either CString objects or unsigned

    integers?

    Get profile IntWrite Profile IntGet Profile StringWrite Profile String

    6. What are the two CFramewnd member functions?

    The MFC library provides two CFrameWnd member functions, save bar state and load

    bar state, her saving and loading control bar status to and from the registry the functionsprocess the size and position of the status bar and docked toolbars. They dont process the

    position of floating toolbars.

  • 8/6/2019 4thsemvp

    9/20

    7. What is serialization?

    The objects can be saved on disk when a program outs and then can be restored when the

    program is restarted this process of saving and restarting objects is called serialization.

    8. How to make a class sterilization?

    A serialization class must be derived directly or indirectly from C Object. In addition, the

    class declaration must contain the Declare-serial macro call, and the class implementation

    file must contain the implement-serial macro call.

    9. Explain splitter window?

    A splitter window appears as a special type of frame window that holds several views in

    panes the application can split the window on creation, on the user can spilt the windowby choosing a menu command or by dragging a splitter box on the windows scroll bar.After the window has been split the user can mouse the splitters to adjust the relative

    sizes of the panes it can be used in both SDI and MDI applications.

    10. What is dynamic and splitter window?

    Dynamic splitter window :- It allows the user to split the windows at any time by

    choosing a menu item or debugging a splitter box located on the scroll bar panes in itgenerally use the same view class.

    Static splitter window :- The panes of a static splitter window are defined when thewindow is first created and they cannot be changed. The user can move the bars butcannot unsplit on resplit the window.

    11. What are the resources of splitting the window?

    When appwizard generates an application with a splitter frame, it includes a split option

    in the projects view menu. The ID-window-split command Id is mapped in the C view

    class within the MFC library.

    COM links the EXE components in different process there its remoting arch, which

    usually involves remote procedure call(RPCS). In an RPC the client makes a call to a

    special DLL called a proxy the proxy sends a stream of data to a stub which is inside a

    DLL in the components process when the client calla a component fn.., the proxy allies

    the stud by sending a message to the component program, which is processed by a fit den

    window.

    13. Define DLL

    A DLL is basically a file on disk usually with a DLL extension consisting of global data

  • 8/6/2019 4thsemvp

    10/20

    complied functions and resources that becomes part of the process. It is compiled to load

    at a preferred base address. DLLS are runtime modular and used to write modular

    software.

    14. Define COM (component object model)

    COM is a protocol that connects one software module with another and then drops out of

    the picture. After the Connection is made the two modules can communication through a

    mechanism called an interface com is an industry standard s/w architecture supported by

    Microsoft and many other companies.

    15. What are dynamic link libraries?

    Windows allows dynamic linking, which means that specially constructed libraries can be

    loaded and linked at runtime. The MFC developers succeeded in combining all theapplication framework classes into a few ready-built DLLs. This means that you canstatically or dynamically link the application framework classes into your application. In

    addition, you can create your own extension DLLs that built on the MFC DLLs.

    16. Explain the document- view architecture?

    The MFC library contains applications and frame classes plus two other classes that

    represent the document and view. This document-view architecture is the core of theapplication framework and is loosely based on the Model/view? Controller classes.

    Document-view architecture separates data from the users view of the data.

    17. What is a view?

    From a users stand point, a view is an ordinary window that the user can size, move, and

    close in the same way as any other Windows-based application window. From theprogrammers perspective, a view is a c++ object of a class derived from the MFClibrary.

    Single document interface : An SDI application has, from the users point of view, onlyone window. If the application depends on disk- file document, only one document canbe loaded at a time. The original windows notepad is an example of SDI application.

    Multi document interface : An MDI application has multiple child windows, each of

    which corresponds to an individual document. Microsoft word is a good example of MDIapplication.

    19. What are the disadvantage of using DLL?

    The programmer must have access to the source code and must be usingthe same programming language with same compiler setup.

  • 8/6/2019 4thsemvp

    11/20

    Memory and disk space will be wasted if several programs which use thesame library of code are running simultaneously.

    20. What is Load Library() function?

    Load Library () call is used to map the DLL module into the memory of your process.The function takes a single parameter, the name of the module to load.

    HMODULE hMyDll;hMyDll=load Library (my Lib);if (hMyDll=null) // could not load DLL

    21. What is GetProcAddress () function?

    The address for the individual functions before using them once the DLL has been loaded

    properly. This is done by calling ::GetProcAddress() with the handle returned by

    LoadLibrary() and the name of the function. If the function is found this will return ageneric pointer to a function. If the function is not found, GetProcAddress() returnsNULL.

    22. What are the characteristics of SDI frame window supported by CPersistent frame

    class?

    Window sizeWindow positionMaximized statusMinimizes statusToolbar and status bar enablement and position.

    Unit IV

    COM provides a unified expandable object oriented communications protocol forwindows

    i)

    ii)

    A standard language-independent way for a win32 client EXE to load

    and call a win32 DLL.A general-purpose way for one EXE to control another EXE on thesame computer.

    A replacement for the VBX control called an active x control.

    2. What is the use of IUnknown interface?

    I Unknown is a special interface to obtain the interface pointer decaled by com.

  • 8/6/2019 4thsemvp

    12/20

    3. What is class factory?

    A class object is sometimes called as a class factory because it often implements a special

    com interface named I class Factory.

    4. What is the use of CLSIDFromProgID?

    Com supports other types of registration database entry that manufactures a human-

    readable program ID into the corresponding Class ID. The com function USI formprogram ID reads the database and perform the manipulation.

    5. What do the INTERFACE-PART maces do?

    The INTERFACE-PART maces generate the nested classes, adding x to the first

    parameters form the class name and adding m- x to form the embedded object name.

    6. What is the purpose of the DECLARE-INTERFACE-MAP macro?

    `The DECLARE-INTERFACE-MAP macro generalizes the declarations for a table

    that holds the IDs of the classs entire interface.

    7. List out the four states that an embedded object can assume?

    The four states are given below

    1) Passive2) Loaded3) Running4) Active

    8. What are the special features of container?

    If handle multiple documentsAllows an embedded object to be deleted

    9. How a COM client calls out-of process components?

    In case of an out- of process components COM uses its remoting architecture which

    usually involves RPCS (remote procedure calls) in an RPC the client makes calls to a

    special dll called a proxy sends a stream of data to a stub which is inside a dll in thecomponents process when the client calls a components fn the proxy alerts the stub themechanism of converting parametts to hard from data streams is called marshaling.

    10. Define Object Model.

  • 8/6/2019 4thsemvp

    13/20

    The Component Object Model specifies architecture, a binary standard and a supporting

    infrastructure for building, using and evolving component-based applications. It extends

    the benefits of object oriented programming such as encapsulation, polymorphismsoftware reuse to dynamic computing.

    11. What is DCOM?DCOM stands for Distributed Component Object Model is the distributed extension of

    COM. It specifies the additional infrastructure that is required to further extend the

    benefits to networked environments.

    12. What are main features of COM?

    The features of COM include the separation of interfaces and implementations, support

    for objects with multiple interfaces, language neutrality, runtime binary software reuse,location transparency, architecture for extensibility, support for indirection approach to

    versioning and different styles of sever lifetime management.

    13. Write short notes on Versioning.

    COMs approach to versioning is based on the following three requirements:-

    i)ii)

    Any interface must be unmutable.A new implementation of same CLSID must support existing

    interfaces.iii) Any client must start interacting with a serve by querying an interface

    with an ID.14. Define OLE.

    OLE stands for Object linking and Embedding. OLE is at the core of window

    applications. It is also a very complex technology that could be difficult to master without

    the help of MFC.

    15. What are the applications of OLE?

    1) Compound documents.

    2) OLE controls.3) OLEautomation.

    4) OLE drag and drop.5) Specialized-MAPI.16. What is marshaling?

    In a remote procedure call the client makes calls to proxy. The proxy sends a stream to a

    stub. When the client calls the component function the proxy alerts the stub by sending

    the message to the component program. The mechanism of converting parameters to and

    from data stream is called Marshaling.

  • 8/6/2019 4thsemvp

    14/20

    Advanced Concepts

    UNIT V

    1. What are the advantages of using a real DBMS?

    1) Use of standard file formats

    2) Indexed file access

    3) Data integrity safeguards

    4) Multi-user access control

    2. Expand the following; Blob, SDK, API, ODBC, DAO?

    Blob -SDK -API -ODBC -

    DAO -

    binary large objectsoftware development kitapplication programming interfaceopen database connectivitydata access object

    3. What is process and thread?

    A process is a running program that owns its own memory, file handles and othersystem resources the separate execution paths that an individual process can

    contain are called as threads.

    4. What are the two kinds of thread?

    Windows offers two kinds of threads namelyi)Works threads

    5. Define ODBC?

    The Microsoft open database connectivity(ODBC) standard defines the rules ofSQL grammar and also the c-language programming interface to any SQLdatabase any DBMS that has an ODBC driver can be occurred by a single

    compiled c or c++ program odbc thus separate the user interface from the actualdatabase management process.

    6. What are the methods of Binary Interface method?

    The first three methods are:-

  • 8/6/2019 4thsemvp

    15/20

    i)

    ii)

    Query Interface() for navigating between interfaces of the same object instance.

    AddRef() for incrementing reference counts.

    iii) Release() for decrementing reference counts.

    7. Write short notes on Threading Model.

    If an application allows multiple clients to concurrently invoke methods of thesame COM object, some synchronization mechanisms needs to be provided toprotect the data. A partment is logical grouping of object that share the sameconcurrency constraints, every COM process can have at most one multithreadapartment but it can contain multiple Single Thread Apartments(STAs).

    8. What is MTS?

    MTS stands for Microsoft Transaction Server provides another style of serverprogramming. MTS provides server objects must be implemented in the form ofDLLs that are to be hosted by MTS surrogate processes. MTS provides context

    objects for these server objects so that they can participate in transaction.9. What is RFX and where is it used?

    RFX is the acronym for Record Field Exchange. The MFC framework can movedata back and forth between the database and the member variables of yourCRecordSet by using record field exchange which works very much like theDialog Data Exchange mechanism used by the dialogs and controls.

    10. What is the use of CRecordSet :: dynamic?

    This type uses a dynamic cursor which allows scrolling in both directions. This

    type of record set allow only forward scrolling will not reflect any changes made

    to the database.11. What are the steps to create sample database?

    The steps are:-i) Start MS Accessiii) Populate the table

    12. Write the general syntax to create a table. Give one example.

    Syntax:-CREATETABLE: table-name({column name data type},.)Example:-CREATE TABLE Employee{

    EmpID INTEGER,

  • 8/6/2019 4thsemvp

    16/20

    EmpName VARCHAR(50)

    SalaryExp}

    NUMERIC(6,2)NUMERIC(5)

    13. How to use Single Row Functions?

    For functions such as CRecordSet:: GetField Value () which work on a singlerow then you set the current row within row set. This is done with the set rowSetCursorPosition () member in CRecordSet.

    14. What are Data transfer and its two structures?

    Transferring data between application are accomplished through the one dataobject interface which provides a mechanism for transferring data and also fornotifications of change in the data.The two structures are:-

    i)

    ii)

    FORMATETC

    STGMEDIUM

    15. List the MFCWinIent classes

    i)

    ii)

    CInternetSession

    CHttpConnectin

    iii) CFtpConnection

    iv)

    v)

    vi)

    CGopherConnection

    CInternetFile

    ChttpFile

    vii)CFtpFil

    eFind

    viii) CGopherFileFind

    ix) CinternetException

    16. List the advantages of WinInet over Winsock

    1. Caching

  • 8/6/2019 4thsemvp

    17/20

    2. Security

    3. Web proxy access

    4. Buffered I/O

    5. Easy API

    6. User Friendly

    17. Define ISAPI Server Extensions.

    An ISAPI Server Extension is program that runs in response to a GET or POSTrequest from a client program. The Browser can pass parameters to theprograms, which are often values that the browser user types into edit, controls,selects from list boxes and so forth. It typically sends back HTML code based onthose parameter values.

    18. List MFC ISAPI Server Extension classes

    i)

    ii)

    CHttpServer

    CHttpServerContext

    iii) CHtmlStream

    19. Define WINSOCK.

    Winsock is the lowest level Windows API for TCP/IP programming. Part of the

    1. Enumerators

    2. Data source objects

    3. Commands

    4. Row sets

    5. Errors

  • 8/6/2019 4thsemvp

    18/20

    6. Transaction objects.

    Unit I16 marks

    1. Write a VC++ program to create a window. Explain all the functions and message loop.

    2. Explain in detail about the architectural overview ofwindows programming?

    3. Explain GDI function and GDI primitives.

    4. Explain the two methods used for getting Device Context Handle?

    Ans:-

    Method 1

    By processing WM_PAINT messageTwo function used: Beginpaint()

    Endpaint()Method2By calling the function

    GETDC()

    ReleaseDC()5. Explain child window controls?

    Unit II1. Explain various visual C++ components?

    II) Write a VC++ program to display the sum of two numbers usingmodal and modeless dialogs.

    3. I) Write a VC++ program to draw a rectangle & ellipse.

    ii) Explain mapping models?

    4. Explain MFC library in detail.

    5. Explain windows common controls?

  • 8/6/2019 4thsemvp

    19/20

    Unit III1. What is DLL? Create a DLL to add & multiply two numbers and how it can be used in

    application?

    2. What is a keyboard accelerator? Explain how to implement the accelerator in a Toolbar?

    Explain with example?

    3. Write a VC++ program to display keyboard pressed?

    4. I) Write a VC++program to display mouse coordinates?

    ii) Explain splitter window & multiple views?

    5. Explain document view architecture?

    Unit IV1. What is an Active X control? How to build an application that uses a calendar control in a

    dialog?

    2. Explain in detail container-component interaction?

    3. Explain OLE drag & drop?

    4. Create an Active X control at runtime? (Or) Write a VC++ program to create a Dynamic

    Active x control?

    5. Explain COM?

    Unit V1. What is a DBMS? What is an SQL? Explain MFC ODBC classes? Explain filter & short

    strings?

    ii) Explain Threading?

    3. Explain data access through ODBC with example?

    Answeri)

    ii)

    Database creation

    Open VC++

    iii) Connect database with VC++ through ODBC.

    4. Write a VC++ program for chat application.

  • 8/6/2019 4thsemvp

    20/20

    5. Write a VC++ program for playing an

    i)

    ii)

    Audio file

    Video file