Wayne Walter Berry

{6230289B-5BEE-409e-932A-2F01FA407A92}

August 03, 2006

In-Memory E-mail Attachments in ASP.NET 2.0

In previous versions of classic ASP and ASP.NET 1.x, there has always been a requirement that an attachment exist on the hard disk before it can be attached to an outbound email. For example, if you want to attach a file to an email in ASP.NET 1.x, you need to reference a location on the disk using a file path. Makes sense right? To attach a file you must have a file. However, in ASP.NET 2.x, you add an attachment without having a file, all you need is a Stream.

April 13, 2006

Subclassing Pages and Master Pages in ASP.NET 2.0

In previous versions of classic ASP and ASP.NET 1.x, there has always been a requirement that an attachment exist on the hard disk before it can be attached to an outbound email. For example, if you want to attach a file to an email in ASP.NET 1.x, you need to reference a location on the disk using a file path. Makes sense right? To attach a file you must have a file. However, in ASP.NET 2.x, you add an attachment without having a file, all you need is a Stream.

Feburary 09, 2005

Exporting Your SSL Certificate from IIS 6.0 and Importing To ISA Server 2004

Sometimes you want to take an SSL certificate that you already own that is installed on your web server and import it into the ISA firewall’s machine certificate store. This allows for encryption of outbound SSL from the ISA server to the published Web site in an SSL to SSL bridging scenario. One example is publishing your Outlook Web Access (OWA) site through your ISA firewall. This article guides you through the steps required to export your SSL certificate from you Internet Information Server (IIS) 6.0 Web site and import that certificate into the ISA firewall’s machine certificate store

Extending Your Page Names With ASP.NET

Back in November of 2000, I wrote an article for ASP 101 called "Extending Your Page Names". Based on the number of people that contact me with questions and praise, it was one of the most successful articles I have ever written. Since then we have seen the launch of Windows 2003, IIS 6.0, ASP.NET, and the rise of Google. So I felt it was time to make an update to the article....

July, 2003

Monitoring IIS Performance

The Performance tool that ships with Windows 2000 is a good means for monitoring Microsoft IIS's traffic, stress, and workload. The Performance tool (known as the Performance Monitor in Windows NT) is an open interface that Microsoft and third-party services and products use to report statistical and trend information about their status.

December, 2002

MetaEdit 2.2 Is on the Job

Ensuring IIS security and optimal performance requires metabase changes that you can’t typically make with ISM. However, you can use MetaEdit to make these changes.

September, 2002

Security in IIS 6.0: Innovations in Internet Information Services Let You Tightly Guard Secure Data and Server Processes

Security improvements have been a top priority in the evolution of IIS. IIS 6.0, which will be part of Windows .NET Server, has improved security features and a new approach to server configuration. New security-related tools for IIS, including IIS LockDown, make securing your server against attack easier than ever. The author explains how and why you can shut down services with IIS LockDown. He discusses limiting port access with TCP/IP filtering, controlling how files are served with extension mapping, what's new for Secure Sockets Layer, the use of URLScan, and more. Wayne Berry - September 2002

August, 2002

The Myth of IIS Downtime

Does IIS seem unstable to you? In reality, IIS is an extremely dependable platform. The real culprits of IIS downtime are probably your custom static files, CGI applications, ISAPI extensions, ISAPI filters, ASP files, and COM objects.

July 02, 2002

IIS Reset

Learn about a built-in IIS 5.0 safeguard that can help you prevent a destabilization of your Web server.

March 14, 2002

Web Site Compression

As IT professionals try to reduce the cost of operating their Web sites, they should consider reducing the amount of bandwidth usage. Current compression technologies can do this; however, their implementation is limited by current bugs in both the browser and the server. Learn how to successfully compress your HTML output and save money on your monthly bandwidth.

Feburary 06, 2002

The Just Two Theory on Web Servers

Running a Windows Web server is becoming expensive and will soon cost even more. The next version of Windows .NET Server will be more expensive than Windows 2000. Factoring in the additional costs of ongoing maintenance for endless security patches and service packs, and the expense of rapidly depreciating hardware has left me thinking about how to handle my Web-server load on the fewest number of servers.

September 07, 2000

Dynamic Caching

Caching happens at all levels, on the hard drive, in RAM, and within the operating systems. It is a performance fundamental of computer science. In 1999, a wave of caching products swept the Internet to serve graphics faster. These products drove the stock of companies like Akamai Technologies, Inc., and Inktomi Corp. into the sky. However, they were focused on caching graphics and streaming media.

November 08, 2000

Extending Your Page Names

This article shows how you can get a static-looking page name and dynamic pages at the same time.

Securing Your Web Server from Prying Eyes

This article will show you how to hide the identity of your web site by making some configuration changes to IIS and using URLScan or by installing an ISAPI filter.This article will show you how to hide the identity of your web site by making some configuration changes to IIS and using URLScan or by installing an ISAPI filter.

March 16, 1998

ADSI Part II: Configuring NTLM with ADSI

ADSI is a powerful COM interface that allows you to programmatically configure IIS, NTLM, and Exchange Server. A previous 15 Seconds' article entitled: "Understanding ADSI", described how ADSI works and gave some examples for configuring IIS. This article will discuss how to configure NTLM using ADSI, including the manipulation of groups, users, and domains.

Ocotober 15, 1998

Debugging Production Active Server Pages in IIS 4.0

Nowadays there are all sorts of ways to catch errors in your Active Server Pages. When writing the code you can use fancy tools like Visual InterDev’s Server Side Debugging or use the good old method of writing your variables out to the browser in HTML. However, once your code goes into production how do you find the errors? A better question to ask first is, “Does my production code have errors?” (ya right).

Feburary 10, 1998

Custom Error Pages with IIS 4.0

In this issue, we will discuss how to use custom error pages with IIS 4.0. With IIS 4.0, you can return special pages for each web site error instead of the default pages. So instead of the message "404 File Not Found," the user could have a list of optional links with your company header and an apologetic message. We will demonstrate how to get the most from custom error pages by using Active Serve pages to customize the message.

January 01, 1998

Maintaining State

In this issue, we discuss two built-in states of the Internet Information Server, session and application. We will also continue where we left off with the Nov 08, 1997 - Sharing Cookies Across Domains Issue, and show how to maintain session state across multiple servers in a web farm. Also discussed, will be user state and the use of personalization to maintain user state. Two begin, we need to define state and illustrate it's occurrence in executables and the Internet Information Server

Feburary 20, 1998

Dynamic Banner Administration

Many sites that are content specific depend on banner advertisement for revenue. Such is the case for 15 Seconds. A banner is displayed at the top of the page for every page viewed. Clients usually buy a set number of banner impressions and these impressions are rotated amongst all the clients over a period of time. In order to do this there must be a dynamic quality to the banners. In other words, the banner to display is not determined until that page is requested.

May 05, 1997

Creating Excel WorkSheets with ASP

In this issue we will discuss and demonstrate how to create Microsoft Excel worksheets from Active Server pages. Though there are many ways that this can be done, we have chosen a method for the example that conserves server load and puts the majority work on the client.

March 16, 1997

Debugging Active Server Objects

In this issue we are going to demonstrate how to write to the Event Log, and how to debug an Active Server Object. The big advantage to Active Server Objects, over writing VB Script in an Active Server Pages, is that you can debug the Active Server Object. Since Active Server Pages do not have a debugger, there is no way to step through loops or view variables. This makes it hard to program big Active Server Pages successfully. However, if you write Active Server Objects you can debug them. Before you can debug code you have to have code to debug. So in this issue we are showing you how to write to the Event Log.

January 01, 1997

Mod 10 Credit Card Check

Mod 10 is a technique for checking the validity of credit card numbers. You can use this code to check credit card numbers that are entered through a form to your web site.

December 14, 1997

COM for ASP Programmers

If you are an Active Server page (ASP) developer, you have already used COM objects to create your ASP pages. However, unless you have developed COM objects or read a detailed book on COM, you might not understand COM enough to make use of the multitude of COM objects that are available to use in ASP. Also, without sufficient COM knowledge you might not be able to read some of the documentation that comes with other COM objects or infer the methods and properties that must exist. One of the wonderful things about COM is that once you learn the standards and the restrictions, you can use this knowledge to quickly learn how to implement other COM objects. In this Tutorial, we will try to explain how COM works from a Visual Scripter's reference point and give you the knowledge you need to master the world of COM.

April 06, 1997

Creating a List Server with ASP

In this issue we are going to show you how to create an HTML-based list server.

October 18, 1997

Active Server Page Programming Standards

If you are getting started programming Active Server Pages, there are a few standardized programming practices you can use to make your code more readable. If you are already an advanced Active Server programmer you will probable have many of your own. Programming standards have been common practice in many programming languages for years. However, unlike most things in computer science there is more than one way to format your code, some better then others, and all controversial. We have written down our thoughts on Active Server page standards in the following article

August 28, 1997

Designing Multiple Web Sites with IIS 4.0

IIS 4.0 allows you to have multiple web sites on one machine. Though IIS 3.0 has this capability, IIS 4.0 expands the functionality of multiple web sites by adding additional characteristics to sub-directories, and allow for multiple applications. Special considerations need to be made when designing and administrating multiple web sites on a single machine, including when to use sub-directories, when to use virtual directories, how to handle security, and the handling of multiple applications.

July 20, 1997

Running ISAPI applications Within IIS 4.0

The next version of the Internet Information Server, version 4.0, is a major change from version 3.0. One of the biggest improvements is the ability to run ISAPI applications in another process space. Version 3.0 of IIS and the previous versions required that all ISAPI applications run within the process space of the server.

March 08, 1997

ASP COM Objects with ATL 2.0

On Feburary 17, Microsoft released Active Template Library (ATL) version 2.0, a predecssor to ATL 1.0. This release was in anticpation to the relase of Visual C 5.0 that will hit the streets March 17. ATL will be shipped in Visual C 5.0, but you can get an early start with Visual C 4.2b and ATL 2.0.

Feburary 17, 1997

ASP COM Objects with ATL 1.1

In this issue we will demostrate how to create a COM Object using Mircosoft's Active Template Library. The COM Object that we will create can be used in an Active Server Page to provide additional functionality. Before you begin createing your COM Object, you must instal ATL 1.1 from Mircosoft's web site.

April 22, 1997

Active Server Components with VS 5.0

This issue is a rewrite of part one of a four-part series on Active Server objects. In the issue is a simple example of creating a Active Server Component in Visual Studio 5.0 using the Active Template Library 2.0. The component that we are going to create will get the user's cookie, or assign a cookie if the user doesn't have one.

September 11, 1997

The Last-Modified Header in ASP

In this issue we discuss how to use the Last-Modified header and the Expires header in Active Server pages to save network bandwidth and server resources. Along with the If-Modified-Since header there is a rich client server interaction that can benefit the Active Server developer if they program correct. Included is example code and a complete discussion of the three headers.

November 08, 1997

Sharing Cookies Across Domains

In this issue of 15 Seconds we will show you how to share the same cookie across multiple sub-domains and multiple domains. We will also discuss sharing state information across web farms using SQL Server. The examples in this issue highlight the power of redirection within Active Server page and enforce the concepts that are related to cookie manipulation.

July 31, 1997

Creating a Category Site with ASP

In this issue we will implement a catalog site that is build with Active Server pages and SQL Server. Along with the implementation there is source code and a discussion of the advantages and disadvantages of creating a catalog site that gets it's content from a database. Included are pages for displaying products, creating a menu page, category page, and running a search across a database. , Before we begin let us make a distinction between content and format. Content is the actual meat of the pages, it is the thing that draws the user to the site and gives the most value add. Format is how the content looks. Different formats allow content to look differently and give your site character

June 10, 1997

Verfiying User Input with ASP

If you're a web programmer or site designer, you have created a HTML form to collect data about users. These forms usually end up writing right to a database. However when you go to analyze the data, you realize that many users have typed in all 'X's or incorrectly entered the information. This becomes more of a problem when there is something behind the form, such as a free download or a restricted area, and the user receives the "prize" without having to fill in the form correctly. XCheck can significantly reduce this type of invalid data entry.

September 20, 1997

Verfiying User Input with ASP

In this issue we will discuss Page Caching, including different browsers cache schemas. We will also discuss how Microsoft Proxy page caching works, how to get your pages cached, and how not to. Examples will be given in the Active Server pages about manipulating the Cache-Control header.

December 10, 1997

Data Return

In this issue of 15 Seconds, we traveled to Texas in the shadow of the Ballpark in Arlington to visit with Sunny Vanderbeck, CEO of Data Return to discover how to host a multitude of sites successfully.

December 20, 1996

Redirecting ISAPI Filter

In this issue we tackle a common problem of redirecting a lost user with an ISAPI Filter Extension. Here is the scenario, a user visits a site, likes it and adds the site to his/her favorites, later they return to find the page gone. The situation that we want to prevent is the user seeing a "HTTP/1.0 404 Object Not Found." This situation arises with site redesigns where pages are removed, most content providers do this without really thinking of the circumstances. A common solution is too keep the page in place, but make it only a link to the correct URL. Using the 404Redirect this situation can be prevented in a clean simple fashion with out extra pages.