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
.Net Framework Featured Blogs
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