InfiniTec - Henning Krauses Blog

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

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

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

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