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
.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