Alex's blog
Giving FullTrust permissions to the .NET assemblies at network shares
I have Virtual PC machine with Windows XP and .NET 2.0 and I need to start .NET application from the shared folder which is mapped to Z drive letter. But the application executable gives me "Application has encountered a problem and needs to close." dialog right after start.
I've tried to compile it with MSBuild from sources on Z: and it have displayed the following error:
... System.Security.SecurityException: That assembly does not allow partially trusted callers. ...
Aha, incorrect permissions! MSBuild does not want to load and execute logger assembly from mapped drive because it is in the Intranet zone, which does not allow full trust. It looks like the application executable could not be started because of the permissions too. So how to give allow assemblies from mapped network shares run with FullTrust permissions?
As I have read this can be done in two ways: by configuring permissions in mscorcfg.msc, or by modifying code access security policy with caspol.exe.
Because mscorcfg.msc is not included in .NET 2.0 redistributable I've executed the following command in the Run dialog (Win+R) to allow assemblies from mapped networking shares run with FullTrust permissions:
c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\caspol -q -machine -addgroup 1 -url file://z:/* FullTrust -name "Z Drive"
Works perfect.
Annoying system restart notification after installing updates
As usual, my Windows XP starts asking me to reboot it after installing new updates. In Vista I can postpone notification for several hours and forget about it, but XP pop ups the notification each several minutes giving me a big chance to shut down the computer and lose my work.
To turn it off just press Win+R and type the following command and press Enter:
net stop "Automatic Updates"
This will completely shot down the automatic updates till the next reboot. Remember that you still need to reboot your computer after completing the work unit to apply the updates - your computer may be vulnerable before reboot.
Cool Wordpress.com blogs
Just FYI, big companies and interesting people who use wordpress.com (or its VIP service) for blogging:
- CNN blogs - CNN anchors, correspondents and producers all over the globe.
- flikr blog - official blog of flikr.com, almost certainly the best online photo management and sharing application.
- BBC Worldwide use WP VIP for some of its projects: Sunday Afternoon Club blog at topgear.com, Human Planet blog at bbcearth.com, etc.
- TIME blogs - time.com correspondents and producers.
- TechCrunch - technology events.
- Symbian blog - the official mouthpiece of Symbian Foundation, maintainer of Symbian OS.
A few C# articles for self-learning: memory leaks and anonymous methods
If you rely on garbage collector, sooner or later you will be hit by the out of memory exception:-)
About memory leaks:
- Large Object Heap Uncovered
- How To: Use CLR Profiler (MSDN)
- How to detect and avoid memory and resources leaks in .NET applications
- .NET Memory Leak Case Study: The Event Handlers That Made The Memory Baloon
- Tracking down managed memory leaks (how to find a GC leak)
- Investigating Memory Issues
- Using GC Efficiently – Part 1
- Using GC Efficiently – Part 2
- Understanding Garbage Collection in .NET
- Debugging tools: Check out CLR Profiler 2.0, Debugging tools for Windows
About C# anonymous methods:
PHP 5.3 garbage collector test
I've updated my "Optimize PHP memory usage: eliminate circular references" (link) and added tests of the PHP 5.3 garbage collector. In summary, it is good but you can do even better.
PHP 5.3 to MySQL connection error
While trying PHP 5.3 today my scripts could not connect to the mysql database. I was sure that everything is installed correctly, so I've searched for similar issues reported by the developers and found the following interesting bug report:
MySQL functions cannot be used with 5.3.x on Vista when using "localhost"
So after changing localhost in my connection strings to 127.0.0.1 PHP successfully connected to the MySQL server. Another workaround is to delete or comment "::1 localhost" record in the c:\windows\system32\drivers\etc\hosts file.
It seems that this problem hits almost all Vista and PHP 5.3 users (Google: Vista PHP 5.3 mysql localhost "127.0.0.1" hosts) but PHP team is not considering this problem as a bug. Definitely, it is excellent demonstration of the open source wold welcomeness to the new users :-)


