Junfeng Zhang's Musing

things about the world, world of things

  • Junfeng Zhang's Musing

    jusched.exe

    • 38 Comments
    I really hate applications doing thing on my back. That is why I rename %ProgramFiles%\Common Files\Real\Update_OB\realsched.exe to realsched.exe.bak. And I just find out something called jusched.exe is running on my back. tlist shows it is from...
  • Junfeng Zhang's Musing

    Symbolic link in Windows Vista

    • 26 Comments
    You can create symbolic link in Windows Vista now. C:\test>ver Microsoft Windows [Version 6.0.5365] C:\test>mklink Creates a symbolic link. MKLINK [[/D] | [/H] | [/J]] Link Target /D Creates a directory symbolic link. Default is a...
  • Junfeng Zhang's Musing

    Image File Execution Options

    • 25 Comments
    There is well-known (or not so well-known, depending on what you do) feature in NT family system, called “Image File Execution Options”. It is really in the registry HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion...
  • Junfeng Zhang's Musing

    Reflection Only Assembly Loading

    • 23 Comments
    .Net Framework 2.0 introduces several new assembly loading APIs. Assembly.ReflectionOnlyLoadFrom(String assemblyFile) Assembly.ReflectionOnlyLoad(byte[] rawAssembly) Assembly.ReflectionOnlyLoad(String assemblyName) And Assembly class...
  • Junfeng Zhang's Musing

    The new MSDN web site

    • 23 Comments
    When I was searching for some MSDN links for Whidbey stuff in http://lab.msdn.microsoft.com/library last night, I was redirected to http://msdn2.microsoft.com/library/default.aspx . I am really impressed by the new site. Now you can use "http://msdn2...
  • Junfeng Zhang's Musing

    App.config reloading

    • 23 Comments
    I have seen the same question asked many times. “I changed app.config while the application is running. But the application does not read the change, unless I restart the application. What should I do?” .Net framework will read the app.config once, and...
  • Junfeng Zhang's Musing

    Diagnosing SideBySide failures

    • 22 Comments
    PhilW believes that SxS COM with manifest is one of those “well kept secrets” that should be more well known. As the current maintainer of Windows SxS, I am absolutely thrilled to hear that. That said, I have to admit that it is not the easiest...
  • Junfeng Zhang's Musing

    Single Servicing

    • 21 Comments
    What is Single Servicing? Single Servicing is that when you fix a bug in your component, you drop a single binary with the fix into customer's machine, everyone using your component automatically get the fix. Sounds easy. But in reality it is much harder...
  • Junfeng Zhang's Musing

    Should we put apphack in .Net 2.0?

    • 21 Comments
    AppHack is a terminology used in AppCompat. Basically AppCompat detects a specific application, and applies an AppHack if necessary. One typical AppHack is to lie about the OS version number, due to applications use the wrong logic to check the minimum...
  • Junfeng Zhang's Musing

    Strong name EXEs

    • 20 Comments
    You don't need to strongly name EXEs. When you strongly name an assembly, you want this assembly to be shared by multiple applications. But you typically don't share applications between applications. An EXE usually is considered as an application...
  • Junfeng Zhang's Musing

    Sample Managed GAC API Wrappers

    • 18 Comments
    //------------------------------------------------------------- // GACWrap.cs // // This implements managed wrappers to GAC API Interfaces //------------------------------------------------------------- using System; using System.Runtime.InteropServices;...
  • Junfeng Zhang's Musing

    Assembly ProcessorArchitecture

    • 18 Comments
    This is not news: .Net framework 2.0 will have 64 bit edition. As expected, Microsoft only support 64 bit chips from Intel And AMD. Namely, IA64 Architecture and AMD64 Architecture. You can download .Net framework 2.0 beta1 for IA64 and x64 now from microsoft...
  • Junfeng Zhang's Musing

    The located assembly's manifest definition with name xxx.dll does not match the assembly reference

    • 17 Comments
    This is a very common Assembly.Load failure exception text. In fusion terminology, this is called Ref-Def-Mismatch. This exception is thrown when fusion finds an assembly that does not match what you are looking for. A very common mismatch is version...
  • Junfeng Zhang's Musing

    Why recursive directory copy does not exist, and why it should not.

    • 17 Comments
    This question comes up in internal discussion from time to time. The reason is, the semantics of directory copy is not well defined. It largely depends on what you need. Here are some questions you need to answer before you go implement one: 1....
  • Junfeng Zhang's Musing

    Domain Neutral Assemblies

    • 16 Comments
    Chris Brumme ’s paper on AppDomains goes into great detail about the design of AppDomain. One of the things he discussed is assembly domain neutrality . Conceptually, a domain neutral assembly is an assembly that lives across multiple appdomains...
  • Junfeng Zhang's Musing

    Questions and suggestions

    • 16 Comments
    I set the comment limit to 90 days. As a result, the original post for questions and suggestions has expired. This one is just to re-enable that. Please post any questions or suggestions in this blog. I have left fusion team. I can still answer...
  • Junfeng Zhang's Musing

    AppDomain and Shadow Copy

    • 15 Comments
    .Net Framework has a feature called Shadow Copy . When shadow copy is enabled on an appdomain, assemblies loaded in that appdomain will be copied to a shadow copy cache directory, and will be used from there. This is great because the original file is...
  • Junfeng Zhang's Musing

    new MSN Explorer

    • 15 Comments
    Did you use the new MSN explorer? It is definitely one of the most beautiful softwares I have ever used.
  • Junfeng Zhang's Musing

    DotLocal (.local) Dll Redirection

    • 15 Comments
    If you are developing software on Microsoft Windows platform, you probably have heard of the term “ Dll Hell ”. “Dll Hell” happens when two applications install two incompatible versions of a shared dll. Since there is no versioning control for...
  • Junfeng Zhang's Musing

    Questions and Topics Suggestions

    • 14 Comments
    I keep getting emails from folks. Most of the time, the questions folks asked are interesting to general audience. Some times I will have a new blog post to answer the question. But often I just hit reply, and missed the chance to share it with everyone...
  • Junfeng Zhang's Musing

    MSI Install-On-Demand

    • 14 Comments
    MSI Install On Demand...
  • Junfeng Zhang's Musing

    Assembly Display Name

    • 14 Comments
    Every assembly has so-called "Display name". As of today, the display name of an assembly is shown as "name, Version=xx.xx.xx.xx, Culture=xx, PublicKeyToken=xx". It starts with a "name", then a bunch of "key=value" pairs, separated by comma. Thos keys...
  • Junfeng Zhang's Musing

    Microsoft.Net Framework 1.1 setup has ended prematurely

    • 13 Comments
    This trick may have shown up somewhere else. But I still see people asking the same question. So I'll post it in my blog. Many people experience failure when installing .Net Framework 1.1 Redist. Usually you see a MSI dialog says “Internal Error...
  • Junfeng Zhang's Musing

    How to detect .Net framework installed or not.

    • 13 Comments
    This is another frequently asked question. If you search google how to detect .Net Framework , this( http://support.microsoft.com/default.aspx?scid=kb;%5BLN%5D;315291 ) page ranks very high. Ignore all the details in the KB articles. It basically...
  • Junfeng Zhang's Musing

    Satellite assembly and AssemblyResolve event

    • 13 Comments
    In .Net framework, CLR will not raise AssemblyResolve event for missing satellite assemblies (to be precise, Resource Manager asks CLR loader to not raise AssemblyResolve event if it can’t find a satellite assembly.). The reason is that Resource Manager...
Page 1 of 14 (350 items) 12345»