Junfeng Zhang's Musing

things about the world, world of things

Determine the processorArchitecture of the running process from managed code

I discussed Figure out the bitness of a process and the ProcessorArchicture of the system back in...

Author: Junfeng Zhang Date: 03/14/2006

disableCachingBindingFailures

In .Net framework 2.0, we will cache assembly loading failures. (See...

Author: Junfeng Zhang Date: 03/13/2006

Generics, NGEN, and Domain Neutral

You know Generics, you understand NGEN, and you have seen Domain Neutral. But have you seen...

Author: Junfeng Zhang Date: 03/12/2006

Assembly Delay Sign and Assembly Installation

Occasionally I receive questions about assembly delay sign and assembly installation (to GAC). In...

Author: Junfeng Zhang Date: 03/11/2006

Assembly Signing Frequently Asked Questions

I come across this wonderful document and I can't help post it here. Now I don't work in .Net...

Author: Junfeng Zhang Date: 03/11/2006

Fuslogvw on Windows Vista

Due to changes in Windows Vista, you can't change logging setting in Vista using fuslogvw.exe by...

Author: Junfeng Zhang Date: 02/28/2006

URL Case Sensitivity, Again

I discussed URL sensitivity issue back in March 2005...

Author: Junfeng Zhang Date: 02/24/2006

Debugging mysterious application crash

Today I was asked to help investigating why an application mysteriously crashes. The symptom is very...

Author: Junfeng Zhang Date: 02/21/2006

A few things about uninstall files

I was debugging a file uninstall problem today and I discovered some problem. Here are some tips to...

Author: Junfeng Zhang Date: 02/17/2006

Locally Unique ID

Sometimes you need a locally unique identifier. For example, you may want to create a temporary file...

Author: Junfeng Zhang Date: 02/17/2006

DotLocal (.local) Dll Redirection

If you are developing software on Microsoft Windows platform, you probably have heard of the term...

Author: Junfeng Zhang Date: 01/24/2006

Error 0x80131702 when installing .Net framework 2.0 Redist

The other day I encounter a problem when installing .Net framework 2.0 redist. It is a fresh install...

Author: Junfeng Zhang Date: 01/20/2006

Thread.GetData/Thread.SetData scalability issue and workaround

This is an internal email from a CLR Developer. I recorded it here just to share the information. I...

Author: Junfeng Zhang Date: 01/01/2006

Satellite assembly and AssemblyResolve event

In .Net framework, CLR will not raise AssemblyResolve event for missing satellite assemblies (to be...

Author: Junfeng Zhang Date: 12/20/2005

Parent Assembly Hint

When an assembly load is request, the assembly that requests the assembly load is called Parent...

Author: Junfeng Zhang Date: 12/20/2005

Assembly loading failure is expensive

Assembly loading failure is very expensive. CLR will need to probe all the possible places before...

Author: Junfeng Zhang Date: 12/20/2005

Publisher Policy --- Highest version, which highest?

You can use publisher policy to redirect assembly version. When there are multiple publisher policy...

Author: Junfeng Zhang Date: 12/16/2005

ReflectionOnlyAssemblyResolve Event

For a discussion of ReflectionOnlyAssemblyResolve event, please visit my previous article...

Author: Junfeng Zhang Date: 12/15/2005

DEVPATH

Recently I have heard a great deal of confusion around DEVPATH. This blog tries to clarify a few...

Author: Junfeng Zhang Date: 12/13/2005

CLR is uninstalled. Now what?

We have an interesting discussion a little while ago in internal discussion. The scenario goes like...

Author: Junfeng Zhang Date: 12/11/2005

Running MSIL applications as 32 bit in 64 bit OS

Managed applications compiled with compiler option /platform:anycpu (MSIL only applications) will be...

Author: Junfeng Zhang Date: 12/10/2005

Break when ntdll.dll is mapped

When you debug a Win32 application, by default the debugger will stop after ntdll finishes...

Author: Junfeng Zhang Date: 12/01/2005

MSDN .Net framework site (https://msdn.microsoft.com/netframework) has a feed for .Net framework...

Author: Junfeng Zhang Date: 11/21/2005

Module Initializer (a.k.a Module Constructor)

Module Initializer (a.k.a Module Constructor) CLR v1.0/v1.1 supports Type Initializer. Here is a...

Author: Junfeng Zhang Date: 11/19/2005

Don't do Shell Extension Handlers in .NET

If you are thinking about writing Shell extension handles in .Net, please think again....

Author: Junfeng Zhang Date: 11/18/2005

Brad Abrams --- API design hall of shame

Brad thinks the API AppDomainSetup.ShadowCopyFiles is API design hall of shame....

Author: Junfeng Zhang Date: 11/18/2005

Assembly loading and AppDomain.AssemblyLoad Event

Assembly loading (Assembly.Load) is the process of loading an assembly reference. It starts with an...

Author: Junfeng Zhang Date: 11/18/2005

Assemblies --- Referencing and servicing

Every assembly has two life forms. At development time, it is referenced by other assemblies. Its...

Author: Junfeng Zhang Date: 11/07/2005

Host and Add-ins --- sharing host assemblies

This is based on a private discussion with David Levine. But the scenario is generally applicable....

Author: Junfeng Zhang Date: 11/06/2005

GAC Assemblies: Install and Uninstall

We have got many questions on GAC assemblies on install and uninstall. This article attempts to...

Author: Junfeng Zhang Date: 10/24/2005

Enumerate the assembly identity attributes of a given assembly

In the previous post I showed an example on how to use fusion APIs to get the full display name of a...

Author: Junfeng Zhang Date: 10/05/2005

Getting the full display name of an assembly given the path to the manifest file

Given a path to an assembly manifest file, how do we get its full display name, including...

Author: Junfeng Zhang Date: 09/13/2005

Thomas Quinn on Addins

Thomas Quinn quietly started his blog on Addins. https://blogs.msdn.com/tq/default.aspxThomas works...

Author: Junfeng Zhang Date: 09/13/2005

ProcessorArchitecture and Assembly.FullName

If you haven’t noticed, assemblies in .Net framework 2.0 have a new name attribute...

Author: Junfeng Zhang Date: 09/08/2005

useLegacyIdentityFormat

In my previous blog Assembly Display Name, I talked about some change we made in .Net framework 2.0...

Author: Junfeng Zhang Date: 08/30/2005

Publisher policy, redirection cross major/minor version, and using the latest version

We all know there are three types of binding policies: App config, publisher policy, and admin...

Author: Junfeng Zhang Date: 07/13/2005

Enumerating CLR versions

The following is a sample from the developer who owns mscoree.dll. The sample prints out all the CLR...

Author: Junfeng Zhang Date: 07/08/2005

How do I know if console handle is redirected?

In a console application, how does it know if the console standard handle has been redirected (to a...

Author: Junfeng Zhang Date: 07/08/2005

Domain Neutral Assemblies and AssemblyResolveEvent handler

Please read my blog domain neutral assemblies on background information. We have learned that The...

Author: Junfeng Zhang Date: 07/07/2005

Assembly.Load() followed by Assembly.LoadFrom()?

Assembly.Load() takes an assembly display name as input, while Assembly.LoadFrom() takes a file path...

Author: Junfeng Zhang Date: 07/01/2005

Figure out the bitness of a process and the ProcessorArchicture of the system

A process may run as native 32 bit process, native 64 bit process, or 32 bit process on 64 bit OS...

Author: Junfeng Zhang Date: 07/01/2005

AssemblyName.ReferenceMatchesDefinition

For background information, please read my blog on Assembly Identity Assembly Identity ---...

Author: Junfeng Zhang Date: 06/23/2005

The Future of Assembly Versioning

If you haven't read the article, you should. The Future of Assembly...

Author: Junfeng Zhang Date: 06/23/2005

Customizing the Microsoft .NET Framework Common Language Runtime

If you want to know how to customize every bit of CLR, you should read Steven Pratschner's book...

Author: Junfeng Zhang Date: 06/17/2005

Sharing NGEN image in Multi-Domain Host

To reuse the same NGEN image of an assembly for every domain in a multi-domain environment, the...

Author: Junfeng Zhang Date: 06/15/2005

Trap Ctrl+C

In Windows, you use SetConsoleCtrlHandler to trap Ctrl+C.

Author: Junfeng Zhang Date: 06/08/2005

Friend assemblies change post .Net framework 2.0 beta1

For introduction of friend assemblies please read my blog...

Author: Junfeng Zhang Date: 06/03/2005

MSI Install-On-Demand

According to MSDN documentation How the Runtime Locates Assemblies, if fusion can’t find the...

Author: Junfeng Zhang Date: 06/03/2005

Assemblies in LoadFrom context can’t be domain neutral, and can’t use NGEN

Assemblies in LoadFrom context can’t be domain neutral. Also they can’t use NGEN. What is so special...

Author: Junfeng Zhang Date: 05/31/2005

<Previous Next>