Thanks to Microsoft for making Office 2003 PIA redistributale. Initially we were told not to bother about PIAs and deployment issues for Office 2003.... Office 2003 was supposed to handle it not the programmer himself. But now this comes as a great option of having PIAs under your hood.
Download Office 2003 PIA from:
Download details: Office 2003 Update: Redistributable Primary Interop Assemblies: "The Office 2003 Primary Interop Assemblies (PIA) redistributable is a Microsoft Windows Installer package that contains the Primary Interop Assemblies for Office 2003 products. Specifically, the redistributable contains the PIAs for the following products:
Microsoft Office Access 2003
Microsoft Office Excel 2003
Microsoft Office FrontPage 2003
Microsoft Office InfoPath 2003
Microsoft Office Outlook 2003
Microsoft Office PowerPoint 2003
Microsoft Office Project 2003
Microsoft Office Publisher 2003
Microsoft Office Visio 2003
Microsoft Office Word 2003 "
Wednesday, April 27, 2005
Tuesday, April 26, 2005
Writing SharePoint Web Parts, the painful adventure...
thats my kind of pain ....
Writing SharePoint Web Parts, the painful adventure...: "Writing SharePoint Web Parts, the painful adventure... "
Writing SharePoint Web Parts, the painful adventure...: "Writing SharePoint Web Parts, the painful adventure... "
Sunday, April 24, 2005
Know how to make an ASP.NET Web Applicaiton to co-exist with Share Point Services
Modifying Configuration Settings for an Application to Coexist with Windows SharePoint Services
Read this article as msdn : "Modifying Configuration Settings for an Application to Coexist with Windows SharePoint Services"
Read this article as msdn : "Modifying Configuration Settings for an Application to Coexist with Windows SharePoint Services"
Thursday, April 21, 2005
Transactions In .NET XML Web Services
Few important points to remember when programing transactions using .NET XML Web Services .
Your class (the one that provides transactions) does not need to inherit from WebService class.
You dont need to explicity commit or rollback your transactions. It is done “automatically“ i.e. if your method doesnt throw any exception then transaction is committed otherwise it is rejected.
Since HTTP is stateless your web service transactions (e.g. your web methods) can only take part in transactions as root of transactions. This implies that your web method can not be part of an existing transaction and it will always start a new transaction. This holds true even if you set your TransactionOption enum to RequiresNew or Required.
Tuesday, April 19, 2005
Reading binary data from SQL Server and then De-Serializing it
For one of our applications we needed to serialize Excel 2003 files as XML documents in the database. And then as and when required by the application we were to de-serialize them. Following is the code for de-serializing xml file. One side note for developers, whenever you want to read blob or text or binary data that is massive in size then always make sure that you use propper command behaviour(System.Data.CommandBehaviour.SequentialAccess)for your ExecuteReader method of SqlCommand. Since by default ExecuteReader method loads all the row and provides you (named/indexed) collection of records. But there is one catch with this and that is: If you have opted for sequential access then you will have to be watchful about the sequence in which you will access your data. i.e. for example if you gave read nth column from reader then you can only proceed to read columns greater (>) n and can never read any column less than or equal to (<= ) n
if(l_rdrSqlReader.GetValue(1) != DBNull.Value)
{
/// READ STREAM
l_buffer = (byte[]) l_rdrSqlReader[1];
}
else
{
l_buffer = null;
}
l_buffer is a byte array to hold contents.
if(l_buffer != null && l_buffer.Length >0)
{
// if file is alread there then delete it
if(System.IO.File.Exists(l_strfileName+'.xls'))
{
System.IO.File.Delete(l_strfileName+'.xls');
}
/// create file stream to write data on to
l_fsExcel = new System.IO.FileStream(l_strfileName+".xls",System.IO.FileMode.OpenOrCreate,
System.IO.FileAccess.Write);
/// create binary writer from the byte array buffer
l_txtWriter = new System.IO.TextWriter(l_fsExcel);
/// write the buffer onto stream
l_txtWriter.Write(l_buffer,0,l_buffer.Length);
/// flush the output and close.
l_binWriter.Flush();
l_binWriter.Close();
}
if(l_rdrSqlReader.GetValue(1) != DBNull.Value)
{
/// READ STREAM
l_buffer = (byte[]) l_rdrSqlReader[1];
}
else
{
l_buffer = null;
}
l_buffer is a byte array to hold contents.
if(l_buffer != null && l_buffer.Length >0)
{
// if file is alread there then delete it
if(System.IO.File.Exists(l_strfileName+'.xls'))
{
System.IO.File.Delete(l_strfileName+'.xls');
}
/// create file stream to write data on to
l_fsExcel = new System.IO.FileStream(l_strfileName+".xls",System.IO.FileMode.OpenOrCreate,
System.IO.FileAccess.Write);
/// create binary writer from the byte array buffer
l_txtWriter = new System.IO.TextWriter(l_fsExcel);
/// write the buffer onto stream
l_txtWriter.Write(l_buffer,0,l_buffer.Length);
/// flush the output and close.
l_binWriter.Flush();
l_binWriter.Close();
}
MSDN Home Page
Download Visual Studio 2005 Beta 2
:
Get the new Visual Studio 2005 Beta 2 release, which includes the latest tools for building Windows, Web, and mobile applications, as well as the first beta release of Visual Studio 2005 Team System.
Wednesday, April 13, 2005
For Basic Programmers!
Well i have been saying it for a while and i dint know that The Great and The Humble Programmer, Edsger Dijkstra has said it before. I just read it on Scott's blog and couldn't help my self placing it on my blog.
"It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
– Edsger Dijkstra
Monday, April 11, 2005
Hitchhikers guide to using "MMC : Microsoft Management Console"
Recently we decided that our tool should have management console that will have a management/configuration snap-in that will be hosted in MMC much like the ones we all see with IIS, SQL Server etc. So I was asked to look into all the possibilites of using and developing MMC snap-in. Following is a small narration of my findings for your information.
MMC an Introduction:
MMC stands for Microsoft Management Console. It provides simple, consistent, and integrated administration user interface for managing windows based applications. MMC also provides and SDK that can be used to develop tools calles "Snap-Ins".
Developing MMC Snap-Ins:
MMC snap-ins can be developed in any development environment that supports producing COM Components. MMC snap-in exposes certain interfaces,methods and events that are available to MMC console. Likewise MMC Console also exposes certain interfaces,methods and events that are available to the snap in so thats how a snap in talks to console and vice versa.
One can develop MMC snap in using VC++ or VB. I myself started out developing an MMC snap in using VC++6.0, I used ATL COM wizard and created a dll. And then I added an ATL object of type MMC snap in to my project. (MMC type object becomes available to your Visual Studio once you have installed MMC SDK.) I dint have much success in playing with that becuase its been good 3-4 years since I last did any serious development VC++ 6.
Yes, right, I am a .NET freak. So I needed some thing in .Net to write my snap in. And thats exactly when I bumped into this .NET Wrapper implementation for accessing MMC SDK. For more details on .NET based development of MMC please visit: http://sourceforge.net/projects/mmclibrary/
I have also read it on some blog that Microsoft is going to offer some native support for MMC development in .NET 2.0.
Following are some of the resources that can get any one started in MMC.
MSDN Home for MMC Snapin:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/mmc/mmc/microsoft_management_console_start_page.asp
Download MMC 2.-0:
http://download.microsoft.com/download/C/4/F/C4F5FB61-F52B-436F-B436-81ADDC813DD5/sms20sdk.exe
John Perkins Article:
http://www.jonperkins.com/exe/col0600.aspx
A Book that talks about MMC and WMI :
http://www.wbem.co.uk/codesamples/books.shtml
MMC Snapin Designer for VB:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/mmc/mmc/vb_introduction.asp
Dot Net Wrapper for MMC:
http://www.ironringsoftware.com/DesktopDefault.aspx?PageId=1
Source forge:
http://sourceforge.net/projects/mmclibrary/
Sample Code for .NET Wrapper for MMC:
http://www.csharphelp.com/archives3/archive528.html
MMC an Introduction:
MMC stands for Microsoft Management Console. It provides simple, consistent, and integrated administration user interface for managing windows based applications. MMC also provides and SDK that can be used to develop tools calles "Snap-Ins".
Developing MMC Snap-Ins:
MMC snap-ins can be developed in any development environment that supports producing COM Components. MMC snap-in exposes certain interfaces,methods and events that are available to MMC console. Likewise MMC Console also exposes certain interfaces,methods and events that are available to the snap in so thats how a snap in talks to console and vice versa.
One can develop MMC snap in using VC++ or VB. I myself started out developing an MMC snap in using VC++6.0, I used ATL COM wizard and created a dll. And then I added an ATL object of type MMC snap in to my project. (MMC type object becomes available to your Visual Studio once you have installed MMC SDK.) I dint have much success in playing with that becuase its been good 3-4 years since I last did any serious development VC++ 6.
Yes, right, I am a .NET freak. So I needed some thing in .Net to write my snap in. And thats exactly when I bumped into this .NET Wrapper implementation for accessing MMC SDK. For more details on .NET based development of MMC please visit: http://sourceforge.net/projects/mmclibrary/
I have also read it on some blog that Microsoft is going to offer some native support for MMC development in .NET 2.0.
Following are some of the resources that can get any one started in MMC.
MSDN Home for MMC Snapin:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/mmc/mmc/microsoft_management_console_start_page.asp
Download MMC 2.-0:
http://download.microsoft.com/download/C/4/F/C4F5FB61-F52B-436F-B436-81ADDC813DD5/sms20sdk.exe
John Perkins Article:
http://www.jonperkins.com/exe/col0600.aspx
A Book that talks about MMC and WMI :
http://www.wbem.co.uk/codesamples/books.shtml
MMC Snapin Designer for VB:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/mmc/mmc/vb_introduction.asp
Dot Net Wrapper for MMC:
http://www.ironringsoftware.com/DesktopDefault.aspx?PageId=1
Source forge:
http://sourceforge.net/projects/mmclibrary/
Sample Code for .NET Wrapper for MMC:
http://www.csharphelp.com/archives3/archive528.html
Monday, April 04, 2005
MSDN Security Developer Center: The Trustworthy Computing Security Development Lifecycle
A good read on Trustworthy Computing initiative by MSFT.
MSDN Security Developer Center: The Trustworthy Computing Security Development Lifecycle: "The Trustworthy Computing Security Development Lifecycle"
MSDN Security Developer Center: The Trustworthy Computing Security Development Lifecycle: "The Trustworthy Computing Security Development Lifecycle"
Microsoft BizTalk Server 2004 Receives InfoWorld's Technology of the Year Award
Microsoft BizTalk Server 2004 Receives InfoWorld's Technology of the Year Award: "Award Recognizes BizTalk Server 2004 for Best Process Automation Solution
REDMOND, Wash. -- Feb. 16, 2005 -- Microsoft Corp. today announced that BizTalk� Server 2004, a Windows Server System (TM) product, was selected by InfoWorld magazine as a Technology of the Year Award winner in the Enterprise Applications and Integration category. Each year the awards are given to recognize technologies that promise to make the greatest impact on enterprise information technology (IT) strategies and to identify those enterprise products that have fundamentally altered the IT landscape.
'Innovation trumps consolidation,' said Steve Fox, editor in chief of InfoWorld. 'InfoWorld's annual Technology of the Year Awards highlight the value of more powerful systems, more flexible storage, richer networks, more elegant applications, smoother integration, automated management and granular security. The real winners are the organizations implementing these technologies.' "
REDMOND, Wash. -- Feb. 16, 2005 -- Microsoft Corp. today announced that BizTalk� Server 2004, a Windows Server System (TM) product, was selected by InfoWorld magazine as a Technology of the Year Award winner in the Enterprise Applications and Integration category. Each year the awards are given to recognize technologies that promise to make the greatest impact on enterprise information technology (IT) strategies and to identify those enterprise products that have fundamentally altered the IT landscape.
'Innovation trumps consolidation,' said Steve Fox, editor in chief of InfoWorld. 'InfoWorld's annual Technology of the Year Awards highlight the value of more powerful systems, more flexible storage, richer networks, more elegant applications, smoother integration, automated management and granular security. The real winners are the organizations implementing these technologies.' "
Saturday, April 02, 2005
MVP for Windows Server System - XML Web Services
I am very happy today. I receieved an email from Microsoft that mentioned that I have been declared MVP by Microsoft for Windows Server System - XML Web Services.
For more details on this please check out my profile available at MVP web site:
https://mvp.support.microsoft.com/profile=662532b2-b798-4ceb-a102-01d9455736b7
I am thankful to Allah Almighty for granting me this success. Last but not the least i am grateful to INETA and Microsoft Pakistan who backed me up and nominated me for this position, Mr Vaqar Khamisani (our MVP Lead) has been phenomenal in all of this process so hats of to him.
Lets keep .NET Rocking!
For more details on this please check out my profile available at MVP web site:
https://mvp.support.microsoft.com/profile=662532b2-b798-4ceb-a102-01d9455736b7
I am thankful to Allah Almighty for granting me this success. Last but not the least i am grateful to INETA and Microsoft Pakistan who backed me up and nominated me for this position, Mr Vaqar Khamisani (our MVP Lead) has been phenomenal in all of this process so hats of to him.
Lets keep .NET Rocking!
Subscribe to:
Posts (Atom)


