February 9, 2000

Event ID 1025 – EcGenerateReadReport

Question: I am getting this error message in the event viewer for my Exchange Server: Event Id: 1025Source: MSExchaneIS PrivateType: WarningCategory: GeneralDescription: An error occurredFunction name or description of problem: EcGenerateReadReportError: 0xfffff9bb What can I do to solve this problem? (I am running Exchange Server 5.5 Service Pack 3.) Answer:

Present Lists Using the SELECT Control

You can use the SELECT control to present a predefined list to the user. The SELECT control is useful for quickly selecting one or more items from a predefined or dynamically generated list from the database. You can implement the SELECT control in different ways, including a drop-down list, a

Volatile Semantics and Container Objects

Volatile objects are used in multithreaded applications and applications that map hardware devices into registers. Although you can declare an STL container object with the volatile qualifier, you will not be able to use any of its member functions safely. The problem is that none of the STL containers declares

Use Explicit Unsigned When Dealing With Raw Binary Data

C++ doesn’t specify whether char is signed or unsigned. Thus, the interpretation of the following declaration: char arr[100]; Is platform-dependent: some compilers will treat arr as an array of 100 unsigned characters whereas others will treat it as an array of 100 signed characters. The unsigned quality of char is

The Possible Deprecation of vector&ltbool> and Its Consequences

In the early days of STL, C++ creators decided to include a specialized form of the vector container class, namely vector &lt bool >. In this specialized vector, bits serve as the container’s elements. This decision was plausible and seemed useful at that time. However, the experience gained in recent

The “Single Exit Point” Idiom &#151 Is It Still Relevant?

Many programming schools recommend that functions have only a single exit point. For example, the following function is considered bad programming practice because it contains three potential exit points: int comapre_strings(const string & s1, const string & s2) { // lexicographical comparison; like strcmp() if (s1 == s2) return 0;

When Is It Safe to Use Inline?

Excessive use of inline functions might bloat the size of the executable and reduce execution speed. In other words, using inline abundantly can degrade rather than enhance performance. For this reason, many programmers avoid function inlining altogether because they can’t predict how inlining will affect performance. However, there is one