An out of process component is implemented as an EXE, and unlike a dll, runs in its own process space. As a result, exe's are slower then dll's because communications between client and component must be marshalled across process boundaries. A single instance of an out of process component can service many clients. -------------------------------------------------------------------------------------3)Advantage of ActiveX Dll over Active Exe ?-------------------------------------------------------------------------------------ACTIVEX DLL:=============An in-process component, or ActiveX DLL, runs in another application’s process. In-process components are used by applications or other in-process components. this allows you to wrap up common functionality (like an ActiveX Exe). ACTIVEX EXE:=============An out-of-process component, or ActiveX EXE, runs in its own address space. The client is usually an application running in another process.The code running in an ActiveX Exe is running in a separate process space. You would usually use this in N-Tier programming.
An ActiveX EXE runs out of process while an ActiveX DLL runs in the same process space as VB app.Also, and ActiveX EXE can be run independent of your application if desired. -------------------------------------------------------------------------------------4)single thread and multithread thread aprtments-------------------------------------------------------------------------------------All components created with Visual Basic use the apartment model, whether they’re single-threadedor multithreaded. A single-threaded component has only one apartment, which contains all the objects the component provides.
This means that a single-threaded DLL created with Visual Basic is safe to use with a multithreadedclient. However, there’s a performance trade-off for this safety. Calls from all client threads except oneare marshaled, just as if they were out-of-process calls.5)What is a Component?If you compile an ActiveX dll, it becomes a component. If you compile an ActiveX Control, it becomes both a component and a control. Component is a general term used to describe code that's grouped by functionality. More specifically, a component in COM terms is a compiled collection of properties / methods and events. Typically a component is loaded into your project via the References whereas an ActiveX Control is loaded into your project via "components".
7)Advantages of disconnected recordsets
A disconnected Recordset, as its name implies, is a Recordset that lacks a connection. This may seem a bit confusing at first - how can a Recordset lack a connection to a data store? - but will hopefully become more clear as the article progresses. seen that a Recordset that does not have a database connection can be very useful as a tool in your programming. It can save you time and effort and make your code more scalable. In order to create a disconnected Recordset two Recordset properties must be set appropriately.It is a requirement that the CursorLocation property is set to adUseClient and the LockType property is set to adLockBatchOptimistic. Note that the CursorType will default to adUseStatic if we don't explicitly state that it should be set to adUseClient.) i.e
rst.LockType = adLockBatchOptimisticrst.CursorLocation = adUseClientHowever, we've recently discovered that these steps aren't necessary. VB automatically assigns batch optimistic locking to newly created, connectionless recordsets. And, of course, without a connection, a recordset can't have any other cursor but a client-side one. To create one of these structures, then, the only thing you need do is create the object variable instance. After that, you can simply begin adding fields to the construct.To add fields, you use the Fields collection's Append method. This method requires two parameters, the field name and the field data type. So, to create a connectionless recordset with two fields,you'd use code
similar to:Dim rst As ADODB.RecordsetSet rst = New ADODB.Recordsetrst.Fields.Append "CustID", adVarCharrst.Fields.Append "CustName", adVarCharAdditional, optional Append method parameters include DefinedSize and Attrib. The DefinedSize argument takes the size of the field. Fill the Attrib parameter with constants that define additional field characteristics, such as whether it will allow null values or is updatable. Since, in our technique, we want the fields to mirror the structure of the original recordset, we'll simply use existing values for these parameters.
Disconnected Recordsets, first available with ADO 2.0, are the most commonly used mechanism to retrieve a Recordset and open a connection for only the necessary amount of time, thus increasing scalability. They are call disconnected because the connection to the database is closed. The collections, properties, and methods of a disconnected Recordset are still available even though the connection is closed. This frees up server resources, given that the number of open connections is limited and database locking is a non-issue.
8)Benefit of wrapping database calls into MTS transactions?If database calls are made within the context of a transaction, aborting the transaction will undo and hanges that occur within that transaction. This removes the possibility of stranded, or partial data. Transaction that uses the Microsoft® Transaction Server (MTS) environment. MSMQ implicitly uses the current MTS transaction if one is available. BENIFTIS OF USING MTS :***********************Database Pooling, Transactional operations,Deployment, Security, Remote ExecutionThis allows MTS to reuse database connections.Database connections are put to ?sleep? As opposed to being created and destroyed and areactivated upon request.10)Controls which do not have events ?Shape and line controls are useful for drawing graphical elements on the surface of a form. These controls don't support any events; they are strictly for decorative purposes. The image, shape and line controls are considered to be lightweight controls; that is, they support only a subset of the properties, methods, and events found in the picture box. Because of this, they typically require less system resources and load faster than the picture box control.11)Control Categoriesa)Intrinsic controls:such as the command button and frame controls. These controls are contained inside the Visual Basic.exe file. Intrinsic controls are always included in the toolboxb)ActiveX controls:which exist as separate files with a .ocx file name extension. These include controls that are available in all editions of Visual Basic (DataCombo, DataList controls, and so on) and those that are available only in the Professional and Enterprise editions (such as Listview, Toolbar, Animation, and Tabbed Dialog). Many third-party ActiveX controls are also available.
c)Insertable Objects:**********************such as a Microsoft Excel Worksheet object containing a list of all your company's employees, or a Microsoft Project Calendar object containing the scheduling information for a project. Since these canbe added to the toolbox, they can be considered controls.Some of these objects also support Automation (formerly called OLE Automation),which allows you to program another application's objects from within a Visual Basic application.
12)DIFF between Image and Picture box controls
The sizing behavior of the image control differs from that of the picture box. It has a Stretch property while the picture box has an AutoSize property. Setting the AutoSize property to True causes a picture box to resize to the dimensions of the picture; setting it to False causes thepicture to be cropped (only a portion of the picture is visible). When set to False (the default), the Stretch property of the image control causes it to resize to the dimensions of the picture.Setting the Stretch property to True causes the picture to resize to the size of the image control, which may cause the picture to appear distorted.13)Default property of datacontrol ?
connect property......(not sure..)
14)Define the scope of Public, Private, Friend procedures? The set of public variables, methods, properties, and events described in a class module define the interface for an object. The interface consists of the object members that are available to a programmer who's using the object from code.<=====> You can create private variables, methods, properties, and events that are used by other procedures within the class module but are not part of the object's public interface. Additionally, constants user-defined types, and Declare statements within a class module must always be private.<====> The Friend keyword makes a procedure private to the project: The procedure is available to any code running within the project, but it is not available to a referencing project.
16)Difference between a function and a subroutine ?
A function accepts any number of parameters (possibly zero), does something with them, and returns a value.
A subroutine is performs an action, but doesn't return a value.
There are two differences between a function and a subroutine: A) How they are invoked.
B) How they are accessed.
A function call has the following syntax:
Function (arg1, arg2, ...)where:
function -->Is the name of the function. arg1,arg2, ... Are the arguments. A subroutine call has the following syntaxsubroutine (arg1, arg2, ... {outputfield'format'})where:
subroutine -->Is the name of the subroutine.arg1, arg2, ... Are the arguments.{outputfield'format'} Is the name of the output field or its format. In addition, on some platforms, the functions are available immediately; whereas, the subroutines are available in a special subroutine library that you must access. 17)Difference between Linked Object and Embedded Object?Embedding objects - When you embed an object, a copy of the object is inserted into the destination document. There's no link to the original file. When you change information in the source document, no changes will be reflected in the destination document. The actual data for the object is stored within the destination file. To make hanges to the embedded object, double click it and it will launch the original application the source file was in.
Linking objects - Information is updated when you modify the original source file when you use a linked object. This dynamic updating is very handy for things such as the aforementioned monthly report. You can open up the Excel spreadsheet that is referenced within your Word document.Make changes to the spreadsheet, close Excel, and when you openyour Word document... viola! The changes are already there. If that object is linked to ten other ord files, the changes are already in those ten files, too! actually linking or embedding an object is fast and easy.18)Difference between listbox and combo box?
A LISTBOX CONTROL displays a list of items from which the user can select one or more. If the number of items exceeds the number that can be displayed, a scroll bar is automatically added tothe ListBox control.
A COMBOX CONTROL combines the features of a text box and a list box. This control allows the user to select an item either by typing text into the combo box, or by selecting it from the list.
DIFF::Generally, a combo box is appropriate when there is a list of suggested choices, and a list box is appropriate when you want to limit input to what is on the list. A combo box contains anedit field, so choices not on the list can be typed in this field.
19)Difference between Dynaset and Snapshot?All Recordset objects are constructed using records (rows) and fields (columns). There are five types of Recordset objects:
Table-type Recordset ::representation in code of a base table that you can use to add, change, or delete records from a single database table (Microsoft Jet workspaces only).Dynaset-type Recordset ::the result of a query that can have updatable records.A dynaset-type Recordset object is a dynamic set of records that you can use to add, change, or delete records from an underlying database table or tables.A dynaset-type Recordset object can contain fields from one or more tables in a database. This type corresponds to an ODBC keyset cursor.Snapshot-type Recordset ::a static copy of a set of records that you can use to find data or generate reports. A snapshot-type Recordset object can contain fields from one or more tables in a database but can't beupdated. This type corresponds to an ODBC static cursor.Forward-only-type Recordset::identical to a snapshot except that no cursor is provided. You can only scroll forward through records. This improves performance in situations where you only need to make a single pass through aresult set. This type corresponds to an ODBC forward-only cursor. Dynamic-type Recordset ::a query result set from one or more base tables in which you can add, change, or delete records from a row-returning query. Further, records other users add, delete, or edit in the base tables also appear in yourRecordset. This type corresponds to an ODBC dynamic cursor (ODBCDirect workspaces only). 20)Difference Listindex and Tab index?
LIST INDEX::Returns or sets theindex of the currently selected item in the control. Not available at designtime.Default LIST INDEX IS -1 for ComboBox, DirListBox, and DriveListBox controls
TAB INDEX::Returns or sets thetab order of most objects within their parent form. Visual Basic automaticallyrenumbers the TabIndex of other controls to reflect insertions and deletions. You can make changesatdesign time using theProperties window or atrun time in code.The TabIndex property isn't affected by the ZOrder method.
21)Difference modal and moduless window?
MODAL forms are forms which require user input before any other actions can be taken place. In other words, a modal form has exclusive focus in that application until it is dismissed. When showing a modal form, the controls outside this modal form will not take user interaction until the form is closed. The internal MsgBox and InputBox forms are examples of modal forms. To show a form modally, use the syntax: MyForm.SHOW.vbModal ' a predeclared constant for 1 MODELESS forms are those which are shown but do not require immediate user input. MDI child forms are always modeless. To show a form modeless,
use the syntax:: MyForm.SHOW
VB FREQUENTLLY ASKED QUESTIONS-2********************************22)Difference Object and Class?
Classes and objects are separate but related concepts. Every object belongs to a class and every class contains one or more related objects.1)A Class is static. All of the attributes of a class are fixed before,during, and after the execution of a program. The attributes of a class don't change.The class towhich an object belongs is also (usually) static. If a particular object belongs to a certain class at the time that it is created then it almost certainly will still belong to that class right up until the time that it is destroyed.2)An Object on the other hand has a limited lifespan. Objects are created and eventually destroyed. Also during that lifetime, the attributes of the object may undergo significant change.So basically the difference between a class and an object is that a class is a general concept while objects are the specific and realinstances that embody that concept. When creating an object oriented program we define the classes andthe relationships between the classes . We then execute the program to create, update, anddestroy the objects which are the specific realization of these classes.23)Difference Query unload and unload in form?
Occurs before a form or application closes. When an MDIForm object closes, the QueryUnload event occurs first for the MDI form and then in all MDI child forms. If no form cancels the QueryUnload event, the Unload event occurs first in all other forms and then in an MDI form. When a child form or a Form object closes, the QueryUnload event in that form occurs before the form's Unload event. 24)Difference Declaration and Instantiation an object?Dim obj as OBJ.CLASS with eitherSet obj = New OBJ.CLASS orSet obj = CreateObject(?OBJ.CLASS?) orSet obj = GetObject( ,? OBJ.CLASS?)orDim obj as New OBJ.CLASSSet object = Nothing ensure the object is release from the memory.If this object is a form, you can add set myform = nothing and Form_Unload() event.Maintain ahabit of remove the object by using set object = nothing which will benefit at last. Visual Basic is supposed to automatically release objects when they go out of scope. To free up some memory usage, you can set the object to nothing.
25)Draw and explain Sequence Modal of DAO
Connection,Container,Database,DBEngine,Document,Error,Field,Group,Index ParameterProperty,QueryDef,Recordset,Relation,TableDef,User,Workspace 27)How can objects on different threads communicate with one another?
Processes communicate with one another through messages, using Microsoft's Remote ProcedureCall (RPC) technology to pass information to one another.There is no difference to the callerbetween a call coming from a process on a remote machine and a call coming from another processon the same machine. Multithreaded applications must avoid two threading problems: deadlocks and races.A deadlock occurs when each thread is waiting for the other to do something28)How can you force new objects to be created on new threads?
The CreateThread function creates a thread to execute within the virtual address space of the calling process.To create a thread that runs in the virtual address space of another process Creating a new thread is as easy as declaring it and supplying it with a delegate to the method where the thread is to start. When you are ready to begin execution on the thread, call the Thread.Start Method. There are special considerations involved when working with multiple threads of execution.
----------------------------------------29)How does a DCOM component know where to instantiateitself? -------------------------------------------------------------------------------------To create a remote instance of a script component, call the CreateObject method, passing it the name of the remote computer as a parameter. If the remotable attribute of a script component's
DCOMCONFIG.EXE
34)What is a Type Library and what is it's purpose ?
The type library may represent another Visual Basicproject, or any other executable component that exposes a type library.Visual Basic creates type library information for theclasses you create, provides typelibraries for the objects it includes, and lets youaccess the type libraries provided by other applications.35)What are binary and project compatibility?
Visual Basic’s Version Compatibility feature is a wayof enhancing your components whilemaintaining backward compatibility with programs thatwere compiled using earlier versions.The Version Compatibility box, located on theComponent tab of the Project Properties dialog box,contains three options: ,sandhya2_001(Re)No Compatibility: *****************Each time you compile the component, new type libraryinformation is generated, including new class IDs and new interface IDs. There is no relationbetween versions of a component, and programs compiled to use one version cannot usesubsequent versions.Project Compatibility:**********************Each time you compile the component the type libraryidentifier is kept, so that your test projects can maintain their references to thecomponent project. All class IDs from the previous version are maintained; interface IDs are changed onlyfor classes that are no longer binary-compatible with their earlier counterparts. Note This is a change in Project Compatibility fromVisual Basic 5.0, where all class IDs and interface IDs in the project changed if any one classwas no longer binary-compatible.Important For the purpose of releasing compatibleversions of a component, Project Compatibility is thesame as No Compatibility.Binary Compatibility:*********************When you compile the project, if anybinary-incompatible changes are detected you will bepresentedwith a warning dialog. If you choose to accept thewarning, the component will retain the type library identifier and the class IDs. Interface IDsare changed only for classes that are no longer binary-compatible. This is the same behavior asProject Compatibility.If, however, you choose to ignore the warning, thecomponent will also maintain the interface IDs.This option is only available when the compilerdetermines that the change was in the procedure ID orsignature of a method.Note:: When people talk about Version Compatibility,they’re usually referring to Binary Compatibility.38)How to set a shortcut key for label?
object.KeyLabel(keycode) [= string]You would probably create the menu item as follows:.Add "keyFile", , , "E&xit", , vbAltMask +vbCtrlMask, vbKeyEndThe default key label for vbKeyEnd is "End". Thus, theshortcut string will be createdby default as "Ctrl+Alt+End".
39)Name the four different cursor and locking types inADO and describe them briefly ?
CURSORS::*********The cursor types are listed from least to mostresource intensive.Forward Only - Fastest, can only move forward inrecordset Static - Can move to any record in the recordset. Datais static and never changes.KeySet - Changes are detectable, records that aredeleted by other users are unavailable, and recordscreated by other users are not detectedDynamic - All changes are visible.LOCKING TYPES::****************LockPessimistic - Locks the row once after any editsoccur.LockOptimistic - Locks the row only when Update iscalled.LockBatchOptimistic - Allows Batch Updates.LockReadOnly - Read only. Cannot alter the data.
40)Name the different compatibility types whencreating a COM component.
No Compatibility - New GUID (Globally UniqueIdentifier) created, references from other componentswill not workProject Compatibility - Default for a new component
41)Why is it important to use source control softwarefor source code?
Modification history. Code ownership: Multiple peoplecannot modify the same code at the same time.42)List the ADO objects?
Connection - Connects to a data source; contains theErrors collectionCommand - Executes commands to the data source. Theonly object that can accept parameters for a storedprocedureRecordset - The set of data returned from thedatabase.Under the ADO Command Object, The Parameterscollection. collection is responsible for input tostored procedures?
43)What two methods are called from the ObjectContextobject to inform MTS that the transaction wassuccessful or unsuccessful?SetComplete and SetAbort.-----------------------------------------------------------------------44)What is the benefit of wrapping database calls intoMTS transactions?Aborting the transaction will undo and changes thatoccur within that transaction. This removes the possibility of stranded, or partialdata
45)Describe and In Process vs. Out of Processcomponent. Which is faster?
An in-process component is implemented as a DLL, andruns in the same process space as its client app, enabling the most efficientcommunication between client and component.Each client app that uses the component starts a newinstance of it.An out of process component is implemented as an EXE,and unlike a dll, runs in its own process space. As a result, exe's areslower then dll's because communications between client and componentmust be marshaled across process boundaries. A single instance of an outof process component can service many clients.46)How would you declare and raise custom events in aclass?
a) Public Event OnVarChange(); b) RaiseEvent OnVarChange[(arg1, arg2, ... ,argn)]
47)What is the difference between a Property Let andProperty Set procedure?
Let - for simple variableSet - for object
48)What is the difference between ANSI and UNICODEstrings when passed as arguments to a DLL?
ANSI - one byte for a charUNICODE - two bytes per char - works only on NT
49)What is the difference in passing values ByRef orByVal to a procedure?ByRef -pass the address (for string -address ofaddress of first byte)BY REF IS VERY USEFULL When the contents itself arebeing modified, when there is large data. Multiple arguments are needed to be returned, insteadthey can be passed as reference.ByVal -pass the value (for string -it is the addressof first byte)50)What is the purpose of the DoEvents command?
Fields execution so that the operating system canprocess other events. Returns number of open forms. Useful for things like ‘cancel search’ inwindows51)Name and define the logical tiers in a traditional3-tiered architecture?
Presentation logic - front end (HTML, Visual Basicforms)Business Logic - Applications and components thatencapsulate business logicData end - databases to store data52)What is the difference between a PictureBox andImage control?
Image Control - Use this to display a picture. Use itover the PictureBox because it takes less operatingsystem resourcesPictureBox- While it can display pictures, it alsoacts as an area on which you can print text andgraphics.Use it for home-grown graphics or print previews
53)Under which circumstance does a VB applicationignore a Timer event?
When the system is really busy doing something elseand when DoEvents is being executed54)What does the NewIndex property return?
Used to retrieve the index of the item most recentlyadded to a ListBox or ComboBox control55)What is the purpose of the ClipControls property ona form or container?
Returns or sets a value that determines whethergraphics methods in Paint events repaint the entire object or only newly exposed areas. Alsodetermines whether the Microsoft Windows operating environment creates a clipping region thatexcludes non-graphical controls containedby the object. Read-only at run time.56)What is the purpose of the AutoRedraw property on aform or container?
Setting AutoRedraw to True automatically redraws theoutput from these methods in a Form objector PictureBox control when, for example, the object isresized or redisplayed after being hidden by another object57)Have you ever used Collections? Collection Classes?
A collection is a set of Repository objects that areall connected to a common source object via a relationship collection. A collection provides a way to connect a group ofdependent objects with an object that ‘contains’ them.For example, an Invoice object might have a collectionof LineItem objects.58)What version control systems have you used?
TLIB 16-Bit add-in59)? How about any other database engines?
Apollo OLE DB ,Apollo Server ,Apollo SQL ,FUNCky ,R&RReport Writer
36)What kind of components can you use as DCOMservers? actve-x components, Com
37)What is a thread pool and how are the threadswithin a thread pool managed? VB FREQUENTLLY ASKED QUESTIONS-3********************************60)Have you ever created Web Classes? ActiveXdocuments? Any other web based components?
61)What are some methods you can use to send data fromone VB executable to another one?62)What are the differences between a standard moduleand a class module?63)How many tabs in a tabbed dialog do you considerappropriate?64)Need of zorder method?65)no of controls in form?66)Property used to add a menus at runtime?67)Property used to count number of items in acombobox?68)property to resize a label control according toyour caption?69)To set the command button for ESC, Which propertyneeds to be changed? 70)Type Library and what is it's purpose? 71)VB and Object Oriented Programming ?72)What are the different compatibility types when wecreate a COM component? 73)What do ByVal and ByRef mean and which is thedefault? 74)What does the Implements statement do? 75)What is OLE and DDE? Explain?76)What is the difference between Msgbox Statement andMsgboxQ function? 77)What was introduced to Visual Basic to allow theuse of Callback Functions? 78)Which controls can not be placed in MDI? 79)Which Property is used to compress a image in imagecontrol? 80)Which property of menu cannot be set at run time? 81)Which property of textbox cannot be changed atruntime and What's the maximum size of a textbox? 82)Which tool is used to configure the port range andprotocols for DCOM communications?
No comments:
Post a Comment