InfiniTec - Henning Krauses Blog

Don't adjust your mind - it's reality that is malfunctioning

Radeon 9000 Driver under Windows 2003 produces STOP 50 (PAGEFAULT_IN_NONPAGED_AREA)

Affected products

  • Windows 2003
  • ATI Radeon/FireGL 9000

Symptoms

When the Radeon/FireGL 9000 drivers are installed under Windows 2003, the system produces a STOP 50 (PAGE_FAULT_IN_NON_PAGED_AREA) every time it is restarted.

Workaround

To work around this problem, restart the system in safe mode and remove the video driver. Also, you can use the last good known configuration. After the removal of the driver, restart the system and then set the hardware acceleration of the video adapter to full. To do this, follow these steps:
  1. Right-click the desktop and select Properties.
  2. Select the Settings tab.
  3. Click Advanced.
  4. Select the Troubleshoot tab.
  5. Move the Hardware acceleration slieder to maximum.
    The drivers can now be safely reinstalled.

Status

The status of this problem is unknown, but it seems to be solved in the current driver release.

Posted by Henning Krause on Friday, December 31, 2004 2:36 PM, last modified on Friday, December 31, 2004 2:38 PM
Permalink | Post RSSRSS comment feed

pushd kann UNC-Pfade verbinden

Betroffene Produkte

  • Windows 2000
  • Windows XP
  • Windows 2003

Zusammenfassung

Dieser Artikel beschreibt die Benutzung des pushd Befehls um effizienter auf UNC Pfade zu wechseln.

Beschreibung

Der cd Befehl kann nicht in Verzeichniss wechseln, die auf Netzwerklaufwerken liegen. Eine Lösung besteht darin, zunächst mit
net use z: \\server\share
z:
cd path
den Netzwerkpfad auf ein lokales Laufwerk zu mappen, und dann auf eben dieses Laufwerk wechseln.
Jedoch muss man hier drei Befehle eintippen, was bei häufiger Nutzung recht aufwändig ist.

Lösung

Der Befehl pushd kann verwendet werden, um die obigen Befehle zusammen zu fassen:
pushd \\server\share\path
Es wird ein Laufwerksmapping durchgeführt, und das aktuelle Verzeichnis wird gewechselt. Ein weiterer Vorteil dieses Befehls liegt darin, das ein
popd
wieder in das Verzeichnis wechselt, das aktiv war, als der pushd Befehl aufgerufen wurde.

Weitere Informationen

Die obigen drei Befehle können in zwei Befehle zusammen gefasst werden. Dies wird hier sehr gut beschrieben.

Tags: , , , ,

Technorati: , , , ,

Posted by Henning Krause on Friday, December 31, 2004 2:29 PM, last modified on Friday, December 31, 2004 2:36 PM
Permalink | Post RSSRSS comment feed

More than two concurrent downloads in Internet Explorer

Affected products

Summary

This article describes how the Internet Explorer can be configured, so that it allows for more than two concurrent downloads.

Description

Normally, the Internet Explore does only two files at a time from one server. The number of paralell downloads can, however, be altered.

Solution

To change the behavior of the Internet Explorer, the following steps are necessary:
  1. Open the registry editor.
  2. Navigate to the key HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings.
  3. Create a new value of type DWord called MaxConnectionsPerServer.
  4. Create a new value of type DWord called MaxConnectionsPer1_0Server.
  5. Open the values and enter the maximum number of concurrent downloads.
  6. After the Internet Explorer has been restarted, the new setting becomes active.

Status

This behavior is by design.

Posted by Henning Krause on Friday, December 31, 2004 2:20 PM, last modified on Saturday, November 27, 2010 5:42 AM
Permalink | Post RSSRSS comment feed

Regain access to blocked atachments in Outlook XP

Affected products

  • Microsoft Outlook XP
  • Microsoft Outlook 2003

Summary

This article describes how Outlook XP can be configured, so that it no longer blocks access to attachments certain file types such as .exe.

Description

Since Outlook 200 SP 2, outlook blocks access to attachment of certain file type such as executables or scripts.
There are two types of blocks: The level one files are completely blocked, so that no access is possible, albeit they are not deleted by Outlook. The level 2 files are blocked in that way, that the user can not open them directly. They must be saved to disk before an access is possible.
Outlook XP can now be configured so that level one filetypes can be transformed to level two files..

SOLUTION

To change the behavior of Outlook, the following steps are necessary:
  1. Open the registry editor.
  2. If you are using Outlook XP, navigate to the key HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\10.0\Outlook\Security.Under Outlook 2003, navigate to the key HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\11.0\Outlook\Security.
  3. Create a new value of type String named Level1Remove.
  4. Open the value and enter a semicolon separated list. For example:
    .exe;.ppt;.url;
    After Outlook has been restarted, the access to the attachments is no longer blocked.

Status

This behavior is by design.

Posted by Henning Krause on Friday, December 31, 2004 2:09 PM, last modified on Friday, December 31, 2004 2:27 PM
Permalink | Post RSSRSS comment feed

Render HTML emails as plain text in Outlook

Affected products

Summary

This article describes the products listed in the beginning of this article can be configured so that they render HTML emails as plain text.

Description

HTML email are simply complete web pages that are sent by mail. These mails can contain images (so called web bugs) that can be used to track who reads the sent mail. This way, spammer can verify if your email account is an active one, so they can send you more unsolicited mails. On the other hand, HTML emails can contain embedded script code that may be harmful to your computer.
The affected programmed can now be configured so that they render HTML emails as plain text.

Solution

  1. To change the behavior of Outlook, the following steps are necessary:
  2. Open the registry editor.
  3. If you are using Outlook XP, navigate to the key HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\10.0\Outlook\Options\Mail.
  4. Create a new value of type DWord called ReadAsPlain.
  5. Set the value to 1.
  6. After Outlook has been restarted, all HTML emails are now rendered as plain text.

Status

This behavior is by design.

Posted by Henning Krause on Friday, December 31, 2004 2:03 PM, last modified on Monday, November 29, 2010 9:31 PM
Permalink | Post RSSRSS comment feed

Wise for Visual Studio.NET Installer Wizard funktioniert nicht

Betroffene Produkte

  • Wise for Visual Studio.NET 5.0
  • Wise for Visual Studio.NET 5.0

Zusammenfassung

Wenn der Benutzer ein neues Setup Projekt mit Hilfe des Assistenten "Setup Project" erstellen möchte, erscheint folgende Fehlermeldung:
Objekt erwartet
Dieser Fehler tritt auf, wenn die Software auf einem Computer mit nicht-englischem Betriebssystem und Visual Studio.NET installiert wird.

sache

Der Assistent besteht aus einigen HTML-Dateien, die in der Visual Studio Umgebung laufen. Diese prüfen die installierte Sprachversion und versuchen dann externe Skripte einzubinden, die für die jeweilige Sprache entwickelt wurden.
Der Fehler tritt nun auf, da es nur ein Verzeichnis für die englische Version der Software gibt. Wenn nun eine andere Sprache als English installiert ist, sucht die Seite die Skripte in einem nicht vorhandenen Verzeichnis.

Lösung

Der Assistent besteht aus vier HTML Dateien, die in dem Verzeichnis WiseWizards\SetupWiz\Html\1033 unterhalb des Installationsverzeichnis der Software liegen. Jede dieser vier Dateien mus folgenderweise modifiziert werden:
  1. Die Datei mit einem Text-Editor öffnen
  2. Die Zeile
    strURL += window.external.GetHostLocale();
    auskommentieren, und darunter die Zeile
    strURL += "1033";
  3. einfügen. Das Ergebnis sollte so aussehen:
    // strURL += window.external.GetHostLocale();
    strURL += "1033";
  4. Am Ende der Datei ist noch ein Skript-Block mit dem folgenden Inhalt:
    strPath += window.external.GetHostLocale();
  5. Auch diese Zeile muss wieder auskommentiert werden, und darunter die Zeile
    strPath += "1033";
  6. eingefügt werden. Das Ergebnis sollte dann so aussehen:
    // strPath += window.external.GetHostLocale();
    strPath += "1033";
  7. Die Änderungen speichern.

Posted by Henning Krause on Friday, December 31, 2004 1:56 PM, last modified on Tuesday, July 26, 2011 9:56 PM
Permalink | Post RSSRSS comment feed

Implement an UDP multicast client/server communication

Affected products

  • .NET Framework 1.0
  • .NET Framework 1.1

Summary

This article explains, how to implement a multicast client/server communication using the UDP protocol.

Description

One feature of the UDP Protocoll is the support for multicast messages. This are messages, that are sent from one host to multiple clients. Additionally, the sending host does not need to know the destination of the packets. Instead, it sends the packet to a special IP address (in the range from 224.0.0.0 to 239.255.255.255). This address is called a multicast group.
The client, on the other side, registers itself to this address on the next hop on the route to the source host. This process is called "joining a multicast group". This next hop is either a router or the destination host. If it is a router, it will propagate this registration forward to the next router, until the destination host is reached.
The MSDN documentation contains an article that covers this topic, but it has two drawbacks:
The client component described in that article does only allow one client on one machine, and
the code doesn't work.

Solution

For the client component, use the following code:
multicastListener = new Socket(AddressFamily.InterNetwork, SocketType.Dgram,ProtocolType.Udp);
multicastListener.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, 1);
multicastListener.Bind(new IPEndPoint(IPAddress.Any, 65000));
multicastListener.SetSocketOption(SocketOptionLevel.IP, SocketOptionName.AddMembership, new MulticastOption(new IPAddress("224.0.0.42"), IPAddress.Any));
This will create a socket that is bound to port 65000. The second line sets the socket in a non-exclusive state, thus allowing other process to bind to the same port. Finally, the fourth line will cause the socket to join the specified multicast group on all network interfaces.
The following code makes up the server part. It will create a socket, that will open the multicast group on the address 224.0.0.42, port 65000.
multicastSender = new Socket(AddressFamily.InterNetwork,SocketType.Dgram,ProtocolType.Udp );
multicastSender.Bind(new IPEndPoint(IPAddress.Any, 0));
multicastSender.Connect(new IPEndPoint(new IPAddress("224.0.0.42", 65000)));
To send messages to the multicast group, the following code is used:
buffer = Encoding.UTF8.GetBytes("Hello world!");
multicastSender.Send(buffer);

More informations

The UDP protocoll is a connectionless, non-reliable protocol. This means, that no connection has to be established before one can send data. Further, it is neither guaranteed that the packets are received by the remote host in the order they were sent, nor that they are received at all.
The addresses 224.0.0.1 and 224.0.0.2 are reserved adresses. The first one is a global group, similar to the broadcast addresses of the IP protocol. The second one is a global adress for routers only.
UDP multicast is described in RFC 1112.
Not all router support the IGMP protocol, which is used for multicast group subscription. Especially over the internet, UDP multicast will most likely fail. It is therefore best suited for intranet applications.

Posted by Henning Krause on Friday, December 31, 2004 1:54 PM, last modified on Friday, December 31, 2004 2:26 PM
Permalink | Post RSSRSS comment feed

Programmatically set the value of META-Tags with ASP.NET and C#

Affected products

  • .NET Framework 1.0
  • .NET Framework 1.1

Summary

This article explains, how to set the attributes of a META-Tag in an ASP.NET website.

Description

Since there is no META-Tag server control within the .NET framework, and the META tags are in the <head> section, thus outside of the <form> section, it is a little bit tricky to access these tags.

Solution

  1. First, create the desired Tag. In this article, a METAREFESH tag will be created. So open the ASP.NET page and insert the following line into the <head> section:
    <meta id="metaRefresh" runat="Server"/>
  2. Now, open the codebehind file, and add the following variable declaration on the class level:
    protected System.Web.UI.HtmlControls.HtmlControl metaRefresh
  3. Note, that the id in the ASP.NET file and the name of the variable must be identically.
  4. In The Page_Load event, add the following code:
    metaRefresh.Attributes["HTTP-EQUIV"] = "refresh";
    metaRefresh.Attributes["content"] = "3;URL=" + myUrl
  5. This code will cause the browser to do a METAREFRESH after 3 seconds. The user will then be redirected to the url specified in the myUrl variable.

Other informations

If you are using WebUserControls and want to access the META tags from within these controls, you should store the desired values in the session object and put the above code into a PreRender event handler. This handler is called after all controls have been loaded. You can then take the values from the Session object and put tehm into the meta tag.

Posted by Henning Krause on Friday, December 31, 2004 1:50 PM, last modified on Tuesday, July 26, 2011 9:57 PM
Permalink | Post RSSRSS comment feed

Display disconnected devices in the Device Manager

Affected products

  • Windows 2000
  • Windows XP
  • Windows 2003

SUMMARY

This article explains, how to enable the visibility of disconnected devices in the Device Manager.

DESCRIPTION

The Device Manager normally only show connected devices, and even if the option "Show hidden devices" is checked, not all installed hardware is listed within the tree.
This is a major drawback in cases when you want to uninstall several devices (e.g. modems or other plug-and-play devices) when they are not currently connected to the computer. Normally you would start the "Add/Remove Hardware" wizard for each device you want to unintall. However, there is a smarter solution to do this, as explained below.

SOLUTION

To show all installed devices, follow these steps:
  1. Open a command prompt
  2. Enter the following:
    SET DEVMGR_SHOW_NONPRESENT_DEVICES=1
    cd %systemroot%\system32
    start compmgmt.msc
  3. Select the Device Manager node and turn on the "Show Hidden Devices" feature by clicking the appropiate entry in the View menu.
    The Device Manager will now list all devices that are installed on the machine.

Posted by Henning Krause on Friday, December 31, 2004 1:32 PM, last modified on Monday, November 29, 2010 8:09 PM
Permalink | Post RSSRSS comment feed

Processes within VMWare suddenly disappear

Affected products

Summary

Some programs do not start, or even fail to install within the guest operating system.

Symptoms

The programs or their corresponding installation program do not start, and the process of the program suddenly disappears.
Below is the list of programs, that are known to fail within VMWare 4.0:
Adobe Acrobat 5: The program can't be started.
Oracle 8i: The universal installer program does not start.

Solution

The various programs require different actions to be taken:
  • Adobe Acrobat 5.0: Update to version 5.05. This version can be downloaded from http://adobe.com.
  • Oracle 8i: A patch is available to fix this problem. For more information search for "oracle" in the VMWare knowledgebase on http://www.vmware.com/support

Posted by Henning Krause on Friday, December 31, 2004 1:29 PM, last modified on Friday, December 31, 2004 1:32 PM
Permalink | Post RSSRSS comment feed