Windows Form Life Cycle

A link to Windows Form Life Cycle

http://codebetter.com/blogs/paul.laudeman/archive/2005/04/17/Windows-Forms-_2D00_-Basic-events-in-the-Lifecycle-of-Forms-and-Controls.aspx

Hello World using Apollo/Adobe AIR

Its been days that I was trying to write a simple app using AIR, the buzz word these days, so downloaded the following

  1. Adobe AIR SDK.
  2. Adobe AIR SDK documentation.

Extract these above stuff after downloading. The documentation is quite good for a HTML /Javascript developer like me. Here I write a Hello World html file using AIR framework.

There are three things to be done

  1. Application XML file.
  2. HTML File.
  3. Executing the application.
Application XML File
  1. Create a XML file named <AppName>-app.xml, here appname can be HelloAIR.
  2. The structure of XML is

xml.gif

The text of rootContent element represents the name of the html file that is associated with the xml.

HTML File

The following the html code

HTML Code

The appLoad is invoked when the page is loaded. As shown above we are including the standard AIRAliases.js file in the HTML file, so AIR runtime will be initialized. If its initialized the Air.Trace statement is used to print on AIR console “Hello Air”. Then XMLHTTP request is made for getting request.txt file and dumping the content of that file onto the AIR console.

Executing the Application

When the AIR sdk is extracted there are two programs that come

  1. ADL: To execute the AIR application
  2. ADT: to package the AIR application

Use the adl command to execute the AIR application.

The ADL command

When you execute the command with XML as parameter then the following is displayed

commandline.gif

execute.gif

As shown above the Hello.AIR is the Air.Trace output and the white console displays thee content of the request.txt file.

Calling Web Service using XMLHTTP Object

Follow the steps to invoke a webservice using a XMLHTTP object in javascript

Step  1: Create a soap envelope for the requested method.

soapenvelope.gif

 var envelope = <The above string>;

Step 2: Create Instance of XMLHTTP Object

Now in the Javascript method create an instance of the XMLHTTP object

 xmlhttp.gif

 Step 3: Prepare the Webservice Request

 As shown above the url points the target webservice which is Service.asmx file and named of the method is HelloWorld. The syntax to be used

url1.gif
http://<Host Name>/<Virtual Directory>/<Webservice>/Method Name

in the next line we are initiating a POST request for the webservice url.

Step 4: Handling the Callback

callback.gif

Here when the response from the web service returns it just display the return string in alert box.

Step 5: Sending the  Request

 sendrequest1.gif

As shown above, the send message is send with the envelope  for the Web Method prepare in the Step 1.

Step 6: Executing the Web Service

calloutput.gif

Refer to this link for more  http://support.microsoft.com/default.aspx/kb/893659

Understanding WCF

Windows Communication Foundation(WCF) that is part of .NET Framework 3.0 is in the line of Microsoft(MS) classic work of abstraction. MS have been innovator in providing abstraction over various technologies from many years. In the same tradition I do believe WCF is another achievement. Undoubtedly they understand the difficulties in any technologies being faced by technology implementors and then they use their experience to nake the technology simple by intoroducing the layer of abstraction.

Let me talk about WCf in particular now

  1. It was always challenge from many years to talk to remote objects.
  2. Many technologies have come and gone or become extinct as dinosors.
  3. To name a few will be CORBA or DCOM.
  4. But there was always problem with the technology itself and its implementation.
  5. Web Service was the most pouplar of all the technology and it still one of the best for such communication.
  6. The problem comes when we want to expose a remote object interface with multiple protocol interface such as HTTP, TCP etc.
  7. The problem with existing technology is that we have create multiple interface for the remote object i.e. each specific to each protocol.
  8. This really become a stumbling block while deciding on the protocol to be used as creating multiple interface results in maintainence overhead.
  9. So if we want a complete interoperable solution we need a web service based interface but if its standalone system the same Web Service interface becomes a performance bottleneck.
  10. WCF really becomes a great help for such scenario. It allows developer to create interface irrespective of the protocol to use.
  11. Developer can then configure the so called end points to decide on which protoocl to used for communication.
  12. The developer will create the interface and implement it. It will then expose the interface using multiple end points i.e. HTTP, TCP, Named Pipes.
  13. The client using the interface then can use the appropriate end point based their need.
  14. WCf as infrastructure takes care all overheads related to messaging etc.

WCF: Hosting Service with multiple end points

In continuation of previous post regarding WCF, here goes another. In this post I will do step step explanation for hosting service using config file (remember this is the beauty of WCF, we don’t need to recompile to add multiple endpoints).

The assumtion is readers have already implemented the service contract. I will use a dummy class named IService for my explanation

  1. Create a instance of ServiceHost. 
    1. ServiceHost servicehost = new ServiceHost(typeof(Examples.ServiceImplementation));
  2. Use the Open to start listening.
    1. servicehost.Open();
  3. Now put the following in the App.Config file

config1.gif

Let me explain each of the element

  • The host element declares the base address for the endpoint. In this case its declaring two base address the http address and another one is the tcp address. The host address is used by the ServiceHost to listen on the respective port and address.

host.gif

  • There are three endpoints

http.gif

Each endpoint basically is collection of address, contract and binding. Here in the above case the address is not specified as we have already sepcified in the base address. The contract is Examples.IService and the binding is HTTP.

  • The second endpoint

tcp.gif

is the TCP endpoint for the same service. Smilar to the previous one this definess the endpoint as collection of Examples.IService as contract and binding as TCP and address is not mentioned and taken from the base address.

  • The last endpoint

mex.gif

is used by the client to generate the meta information about the Service. This  is standard and ideally should be there for each service.I hope the above helps in understanding this beautiful technology.

The author has 10+ years experience with Enterprise Poduct Development. He is also the Co-Founder of PCVITA. He have expertise in Enterprise Architecture, Enterprise Messaging Platform Migration, Email Archiving.

Links for Skype Crash

A link provided by Skype

Skype Support

https://support.skype.com/en-us/faq/FA10382/Why-does-Skype-crash-on-my-computer

Forum

http://forum.skype.com/index.php?showtopic=64026

Skype Crash Globally

Everyone is blaming Microsoft acquisation for the global crash of Skype crash today. But I found this unfair. Its just 2 weeks old news and I believe nothing have changed in Skype to have such impact.

Though it affected our support through our website www.pcvita.com

A news article on the same topic

http://www.theinquirer.net/inquirer/news/2074186/skype-suffers-disastrous-crash-users-question-microsoft-buyout

Sharepoint Migration: Migrate the content to Microsoft Sharepoint

PCVITA Express Migrator for Sharepoint is next generation migration product for Sharepoint Server as part of Sharepoint Migration. It equally fits into Migration 2.0 generation of migration products. The products supports migration of file system content such as Microsoft Word, Microsoft Excel, Microsoft Powerpoint, Adobe Acrobat PDF and various other types of document to Microsoft Sharepoint Server 2007 and Microsoft Sharepoint Server 2010 as part of Sharepoint Migration.

With the high adoption rate of Microsoft Sharepoint Server among enterprises which are small, medium and large in size. It is becoming very difficult for System Administrator to quickly migrate the existing organisation common internal documents related to finance, administartion ,HR, Research and Development and other related documents to quickly migrate them to Microsoft Sharepoint Server.

PCVITA Express Migrator For Sharepoint acts as a smart bridge which is easy to use, effective and efficient to move their existing file system content to Sharepoint as part of Sharepoint Migration.

PCVITA Express Migrator for Sharepoint also supports migrating content which is residing in Exchange Server  Public folder to Sharepoint as part of sharepoint migration strategy. Many organisation are using Public Folder to keep their common document and share across the organisation. These can now be easily migrated to Sharepoint as part of the Sharepoint Migration. This is great in scenario where the Sharepoint Administrator doesn’t need two products to perform the Sharepoint Migration.

PCVITA Express Migrator for Sharepoint comes with the following features

  • Support for adding files and folders.
  • Support for associating meta information with the files.
  • Select the destination document library on target sharepoint server.
  • Create a new document library.
  • Apply filters on the content getting migrated.
  • Report on the migration.

Check more at http://www.pcvita.com/file-system-to-sharepoint.html

Monitor Website 24X7 FREE

PCVITA Page Monitor empowers webmaster and overcome the concern related to website monitoring. The 24X7 FREE monitoring services monitor the configure web pages on a periodic basis. It checks for the following

  1. Unavailability of website page.
  2. HTTP 404 Error code.
  3. Script attack on website page.
  4. Page getting slower based on response time.

PCVITA Page Monitors provides the webmaster the ability to configure website page at granular level with the following

  1. Website Page.
  2. Monitoring Frequency.
  3. Expected Response Time.
  4. Alerts Notification.
  5. Priority of the Page.

The granularity allows the webmaster to segregate the pages for monitoring based various parameters. Particularly the alert notifications. This allows the webmaster to ensure to get particular set of notifications instead of getting loads of notifications.

The notification that are sent as part of alerts are very specific and have very specific information such as what has changed in case content changes being monitored for the page. This allows the webmaster to verify what changes have been applied on the pages and it is same that was planned.

The dashboard is the USP of PCVITA Page Monitor. It is rich and provides various aspects of the website monitoring life cycle. The following things are displayed on the dashboard

  1. Daily Monitoring Status of Website Pages.
  2. Response Time for the configured pages.
  3. Weekly Monitoring Status.

This provides the webmaster with a unique way of getting to know how are the website pages doing without the need to generate the reports. PCITA Page Monitor does have the facility to generate the reports.

Email Archiving for Microsoft Outlook

Email Archiving is becoming an alternative for Email Backup solution. From the days where we would regularly take backup of the emails residing in the Micorosft Outlook PST file and storing it onto a different drive. And when we need them then we used to load from the cold storage. Even though it serve the primary purpose of the offloading the old emails and reducing the size of the PST file. It may not be the right solution.

Email Archiving is today’s need and user should understand why this is important for them. Archiving will allow the email content within the PST to be stored on a separate repository say a database but also at the same time ensure the primary objective of reducing of PST file is also served.

I always used the term “Online Backup” for the layman users. The backup which doesn’t need the conventional way of restoring the data from a different storage but can be accessed anytime by the user without the intervention of IT administrator. This is where it really remove the dependency for the user.

Typically an email archiving solution will allow users to configure mailbox residing in the Microsoft Outlook PST file to different data repository. While doing so it also provides various flexibility which empowered users for archiving emails such as setting up the location for archiving, archiving frequency and various filters to choose what to archive and what to archive and what not to archive.

Apart from the basic feature, the power of email archiving solutions comes with the power of search. The search is the important aspect of any email archiving solution. Search can be categorized by

  • Search Within Content
  • Search Within Attachments
  • Search Based on Dates
  • Search Based on Folders
    • Body of the Email Message.
    • Subject of the Message.
    • Sender Email Address
    • Receiver Email Address
  • Search Within Content

    Any email archiving solution should without any failure SHOULD provide search within content of the email. This include

    User SHOULD be able to perform free text based search. The email archiving solution should provide the results based on matching terms. User are used to Google Search so providing such search will only increase the usability of the product.

    Search Within Attachments

    One of the most important feature is providing free text based search within the contents of the attachments including the file name. Not only the email should come in result due to presence of the search words within the attachments but also the email archiving product should provide proper highlighting feature to allow user to understand which attachment have the search words. This is really a chaos situation where an email is part of search result but the product doesn’t highlight the attachment which has those relevant words.

    Search Based on Dates

    Providing search based on dates allow user to narrow down the search on the huge email archiving store. This is really a good feature to have for an email archiving solution provider.

    Search Based on Folders

    This may not be a necessary feature but to provide an ability to include or exclude folders will help user narrow down the search.

Monitoring Website Page Changes For Competitors or Yours

PCVITA announces the launch of their first SaaS model application Page Monitor for monitoring web pages. The application makes it very simple for IT Administrator or any other IT users to monitor the web pages individually for any types of changes.

The application comes with the following salient features- Monitors Static/Dynamic web page for availability.
- Regularly monitor the pages at configured interval.
- Rich dashboard providing daily/weekly summary.
- Monitor change of script within the page.
- Monitor change of content within the page.
- Notifies about any script or page changes through email.

One of the best feature about the application is its rich dashboard. The dashboard provides the entire summarized information at a glance. It can quickly provide an idea to the user how each of the pages are behaving properly.

Whenever their is change the application send an email to the user indicating the change details. The user can quickly update the changes to application if its done by the user through email. This way he authorizes the changes else if its not a change that is planned then it can be script attack which can bring the business down. The alert can really save the life of the user and in turn maintain the revenue of the organisation.

Check the Page Monitor at http://www.page-monitor.com/

Paradigm Shift for Backup of Microsoft Outlook PST file

PCVITA comes with a paradigm shift in the world of Outlook Backup solution. Till now backup of Microsoft Outlook PST file would involve
a. Stop the Microsoft Outlook.
b. Copying the Outlook PST file to different location.
Whenever user needs data from the backup then copy back from the backup device and then load the PST file to Outlook. This is OLD and now obsolete technique.

PCVITA provides the most efficient and new technology solution for Outlook backup. PCVITA Outlook backup solution comes with the following feature
a. Backup the Outlook PST file without stopping Outlook.
b. Reduce the size of Outlook PST file.
c. Search from backup without the need to restore the backup.
d. Integrated with Outlook.

With PCVITA Outlook Backup solution the user completely is away from the age old tradition instead it can always access the outlook backup emails without any issue and also perform search on outlook backup emails within Outlook itself.

For more details check http://www.pcvita.com/email-archive-magic.html

Compress PST using PCVITA Email Archive Magic

Over a period of time, the Microsoft Outlook started becoming slow due to increased size of the MS Outlook PST file.  Not to blame the Microsoft but it is generally the user tendency to keep all emails in the Outlook for some or other reason. The aging becomes the issue as the times passes.

Though we need the emails for some reason but it is not always required. In such case why we should keep those age old emails in the Outlook PST file and increase the overhead involved in it. The solution is archive the old emails using some third party tool like PCVITA Email Archive Magic.

PCVITA Email Archive Magic provides one of the most comprehensive solution for Microsoft Outlook Email Archiving with the following features

  1. Integrated with Microsoft Outlook.
  2. Supports archiving of multiple Outlook PST files.
  3. Supports deletion of emails after archiving.
  4. Support powerful search based on
    1. Text based search.
    2. Dates based search.
    3. Search within attahcments.
  5. Support export of the searched emails as Outlook PST or EML files.

Once the PST contents are offloaded to the archive store the size of the PST file reduces to greater extent.

Best Practices for Email Deliverability

Source: Marketing Transformation Forum, Email Marketing

In simple terms, email deliverability is about ensuring that an email is delivered to an intended recipient’s inbox.
Even though the goal of deliverability is simple, the process itself is quite complex. Ensuring successful e-mail deliverability is in fact a number of tasks and best practices that must be performed diligently and continuously by both the Email Service Provider (ESP) and the Client Marketers. Both are responsible in the end to ensure optimal email deliverability.

Here are some of the best practices that a marketer should be aware of, to ensure a successful e-mail campaign:

1. Get Your Email Marketing Program in Compliance with CAN-SPAM: The cornerstone of deciphering the legislation is gaining a full understand¬ing of what email is covered by the law. Failing to follow the regulations could place your email marketing efforts in violation. Get a copy of the CAN-SPAM Act and understand the dos and don’ts.

2. Send Relevant, Targeted, And Personalized Messages: By now it’s a known fact that the more relevant and personalized an e-mail is, the more effective it will be. Knowing this—and with marketing automation systems now available that put these capabilities within the reach of almost any marketer—email marketers have little excuse for blasting out generic, single-shot emails to un-segmented lists. Not only will better-targeted, more personalized emails achieve better conversion rates, they will also improve deliverability due to fewer complaints and better sender reputation.

The same marketing automation systems mentioned earlier, enable marketers to build sophisticated segmentation and targeting models through a simple-to-use interface. The ability to easily generate these complex customer segments and even sub-segments for testing purposes enables marketers to take their e-mail targeting to the next level.

Similarly, “personalization” is no longer a matter of inserting the recipient’s name into the “To” line. Today’s best marketing automation systems enable marketers to make almost every graphic and text element of an e-mail easily customized and personalized.

There is also no reason to see streams of e-mail communications as static and linear. Again, advanced marketing automation systems allow marketers to create adaptive campaigns that react to past contact behavior. Perhaps the contact responded best to a certain kind of offer in past, or clicked on a certain kind of link: marketers can ensure that the next email this contact receives draws on this information to compose an even more custom message, with the email stream becoming more and more relevant and personalized with each successive interaction. This is the dream of true one-to-one marketing, made possible on a mass scale.

3. Mail Regularly: Most marketers worry about emailing too much, but sending too little can be as big a problem. To keep bounces at a minimum, be sure to email everyone on your list at least once every 90 days. Email addresses “churn” at an incredible rate, and infrequent mailing can raise overall bounce rates to undesirable levels.

4. Make It Easy to Unsubscribe: Make sure the Unsubscribe or opt-out button is prominently displayed in the message, giving the recipient a clear option other than reporting your message as spam.

5. Enforce Strong & Relevant Exclusion Rules: Make sure those customers who have ‘Unsubscribed’ from receiving future emails are automatically excluded from all future email communications, as this will no doubt lead to a blacklisting. Also, make sure strong communication rules / policies are automatically enforced to avoid over communication as this will contribute to poor reputation and possible blacklisting. For example, no more than one (1) email in a 10 day period and no more than three (3) emails in a 30 day period.

6. Manage Bounced Emails: Make sure those customers who returned a ‘Hard Bounce’ are automatically excluded from all future email communications, as this will no doubt lead to a blacklisting. Also, make sure those customers who returned a ‘Soft Bounce’ are excluded if they have soft-bounced at least there (3) times over a period of 3 – 4 weeks.

7. White Listing: Include a request in your email for the recipient to add the sending email address to their ‘Safe Senders’ list. Emails sent from this address would then in future always be delivered directly to the recipient’s inbox, provided no other deliverability issues are encountered.

8. Check Content for Spam Score: Always run your outbound email through a content checker, such as integrated SpamAssassin, to reduce the chance it will get tripped up by filters.

9. Test Renderability: Always test your message to ensure it will render properly for different recipient email clients. Also, because a lot of email clients block images, try turning them off for a test to see how the message looks and whether it still communi¬cates meaning with the graphics disabled.

10. Try and Test Appealing Subject Lines: The main purpose of a ‘Subject Line’ is to achieve an open. It is worthwhile testing many variations to see which one works best.

11. Testing Emails: Testing out emails on sub-segments and samples before mass-sending is a marketing best practice for multiple reasons. Not only can it help assess the effectiveness of your message and predict conversion rates, but it can identify deliverability issues. Test your messages to check for higher-than-normal complaint rates or numbers of unsubscribe requests. Split-test different versions of the same email on random sample to isolate the biggest factors in deliverability rates, or test the same email on different segments to identify different segment behavior patterns—perhaps a certain segment is more sensitive to certain factors and at risk of lodging spam complaints. One option for finding out if your messages are being delivered is to use a “seed” list of addresses.

12. Monitor Basic Email Campaign Performance: Keeping a close eye on basic key metrics such as opens, click-throughs and bounces can help you uncover deliverability prob¬lems. For example, if you see a sudden increase in bounces or a drop in opens, chances are you might need to take a closer look at deliverability.

For more information Visit: Email Marketing

Next Generation Test Case Management

One of the important aspect of entire software development cycle is Quality Assurance or QA. QA in itself is becoming so vast and huge it has multiple facets and need great tools to manage those aspects.

If you check out a decade back QA was more of the rudimentary test cycle performed without any science. As the entire world of software evolved it has become more and more science with all law of necessity.

One of the important aspects of QA is Test Planning which involves planning, designing,execution and analysis of test cases. This entire cycle requires automation and their are various Test Case Management tools available in the market. One of them Nuevosoft. I got this presentation and thought of sharing with all my readers just check to see if this really helps in providing an efficient software solution to the world.

Check about this Nuevosoft website.

Follow

Get every new post delivered to your Inbox.