The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,862 other subscribers

Archive for June, 2012

Direct Visual Studio 2012 RC and Windows 8 Release Preview ISO download URLs

Posted by jpluimers on 2012/06/20

Somehow many software vendors seem to make it a sport to make it hard to get download URLs.

So here is a bunch of direct download URLs for the (almost new <g>) Visual Studio 2012 RC (formerly and internally known as Visual Studio 11).

There are both ISO files (big, but convenient for offline installation).

Visual Studio 2012 (formerly VS11) ISO downloads
Edition Download page Download binary
Ultimate http://go.microsoft.com/fwlink/?LinkId=247147 http://download.microsoft.com/download/6/9/7/697096F6-4EEA-4704-AF2D-F3BAF57C7634/VS2012_RC_ULT_ENU.iso
Premium http://go.microsoft.com/fwlink/?LinkId=247144 http://download.microsoft.com/download/4/D/6/4D602B41-DFB6-4350-89CD-DC78B0C06996/VS2012_RC_PREM_ENU.iso
Professional http://go.microsoft.com/fwlink/?LinkId=247141 http://download.microsoft.com/download/0/B/2/0B29F8C6-C2C7-4187-A792-BDBAFB1802ED/VS2012_RC_PRO_ENU.iso
Test Professional http://go.microsoft.com/fwlink/?LinkId=247152 http://download.microsoft.com/download/F/A/D/FAD0D06E-A8BA-40D4-8F12-FE94A153EB85/VS2012_RC_TESTPRO_ENU.iso
Express For windows 8 http://go.microsoft.com/?linkid=9810160 http://download.microsoft.com/download/A/7/C/A7C0FFAF-E8D6-45F9-8820-0A7972DF5683/VS2012_RC_WinExp_ENU.iso

Web installers (depending on the choose install options, the total download can be a lot less than the complete ISO, but your system needs to be online during the full installation process).

Visual Studio 2012 (formerly VS11) ISO downloads
Edition Download page Download binary
Ultimate http://go.microsoft.com/?linkid=9810263 http://download.microsoft.com/download/6/9/7/697096F6-4EEA-4704-AF2D-F3BAF57C7634/vs_ultimate.exe
Premium http://go.microsoft.com/?linkid=9810243 http://download.microsoft.com/download/4/D/6/4D602B41-DFB6-4350-89CD-DC78B0C06996/vs_premium.exe
Professional http://go.microsoft.com/?linkid=9810223 http://download.microsoft.com/download/0/B/2/0B29F8C6-C2C7-4187-A792-BDBAFB1802ED/vs_professional.exe
Test Professional http://go.microsoft.com/?linkid=9810304 http://download.microsoft.com/download/F/A/D/FAD0D06E-A8BA-40D4-8F12-FE94A153EB85/vs_testprofessional.exe
Express For windows 8 http://go.microsoft.com/?linkid=9810150 http://download.microsoft.com/download/A/7/C/A7C0FFAF-E8D6-45F9-8820-0A7972DF5683/win8express_full.exe

You can find similar Windows 8 Release Preview download links here (they were distilled from the official download page, which now gives a 404 because of the atdmt link redirect is broken).

I use the x64 and x86 shortcuts for the x64 and x86 ISO links.

The Windows 8 Release Preview Upgrade Assistant also comes in handy.

The above links give a sustained transfer rate here of at least 3 megabit/second.

–jeroen

Posted in .NET, .NET 4.5, C#, C# 5.0, Development, Power User, Software Development, Visual Studio 11, Visual Studio and tools, Windows, Windows 8 | Leave a Comment »

Strong name for Interop.Scripting – .NET Framework

Posted by jpluimers on 2012/06/20

So I won’t forget:

I was trying to generate from the interop.scripting.dll which I guess was the automatically generated dll without strong naming. A wrapperof a wrapper apperently doesnt work.
The following did work:

tlbimp.exe C:\WINDOWS\system32\scrrun.dll /keyfile:..\nameHere.snk /out:Interop.Scripting.StrongNamed.dll

The suite of .NET projects I’m refactoring relies in part on scripting in the Microsoft Script Runtime because the original was build by people bringing their COM love from the VB6 world into the .NET world.

I don’t see COM as the first class citizen it was in the VB6 era. On the other hand, COM and ActiveX play an important role in the .NET world. Sometimes I regret that, as dealing with COM is hard.

Some consider COM a first class citizen in .NET as it was in VB6, especially after the dynamic keyword was added in C# 4.0. The variant type available since Delphi 2 since 1996 does more or less the same as dynamic keyword in C#. I know how Anders Heijlsberg disliked the Delphi Variant support of COM. But COM is what the market wanted in 1996, and that seems true until today.

But I digress.

At least parts of the .NET code needs to become strongly named, so I’m hesitating:

  1. kick out the COM stuff – and verify through unit tests that the encompassing code still works – or
  2. generate a strongly named COM Interop Wrapper as described above.

Not sure yet.

Opinions anyone?

Anyway, I’m expecting a few problems here and there, so I’ll be using the CLR Interop Tools like the P/Invoke Interop Assistant and Type Library Importer in Managed Code where needed.

–jeroen

via: Strong name for Interop.Scripting – .NET Framework.

Posted in .NET, C#, Delphi, Development, Software Development, VB.NET | 1 Comment »

TFS – Undelete File or Folder – brilliantly easy from the Visual Studio IDE: just enable “Show deleted items in the Source Control Explorer”

Posted by jpluimers on 2012/06/19

Never knew it was so brilliantly easy to undelete files from TFS: you can do it in Visual Studio, by enabling “Show deleted items in the Source Control Explorer” in the settings.

Just look at TFS – Undelete File or Folder for the screen shots.

Not sure in which Visual Studio version this got introduced, but it works in VS 2010 and up.

–jeroen

Posted in Development, Software Development, Source Code Management, TFS (Team Foundation System), Visual Studio 11, Visual Studio 2010, Visual Studio and tools | Leave a Comment »

Delphi: interesting SO question + answer on using AllocateHWND to route TThread messages to a message handler in a TObject descendant (via: delphi – Custom Messages in Non-Windowed Classes – need a default handler? – Stack Overflow)

Posted by jpluimers on 2012/06/19

The delphi – Custom Messages in Non-Windowed Classes – need a default handler? – Stack Overflow thread on SO is very interesting.

It explains how to use AllocateHWND to route messages for a TThread into a message handler of an object instance.

–jeroen

Posted in Delphi, Development, Software Development | Leave a Comment »

Interesting: Introducing FLAC.js: A Pure JavaScript FLAC Decoder — Official.fm Labs

Posted by jpluimers on 2012/06/18

Interesting: Introducing FLAC.js: A Pure JavaScript FLAC Decoder — Official.fm Labs.

–jeroen

Posted in Development, JavaScript/ECMAScript, Power User, Scripting, Software Development | Leave a Comment »

Some monospaced fonts (fixed width) to try out: M+ OUTLINE FONTS | DESIGN

Posted by jpluimers on 2012/06/18

Definitely a set of fonts that I want to try out for software development:

M+ MN is aimed at a new distinctive design for a terminal font specialized to programming

And:

M+ also has extensive international support. From its site:

All fonts were completed with Basic Latin, Latin-1 Supplement, Latin Extended-A, and IPA Extensions. And most of Greek, Cyrillic, Vietnamese, and extended glyphs and symbols were prepared too. So the fonts are in conformity with ISO-8859-1, 2, 3, 4, 5, 7, 9, 10, 13, 14, 15, 16, Windows-1252, T1, and VISCII encoding.

LICENSE

These fonts are free softwares.

Unlimited permission is granted to use, copy, and distribute it, with or without modification, either commercially and noncommercially.

THESE FONTS ARE PROVIDED “AS IS” WITHOUT WARRANTY.

–jeroen

via: M+ OUTLINE FONTS | DESIGN,  M+ OUTLINE FONTS and  WordPress › HTML Editor Type « WordPress Plugins.

Posted in About, Personal, Power User | Leave a Comment »

CloudFlare: CDN and more from the makers of the HoneyPot project

Posted by jpluimers on 2012/06/15

The CloadFlare network is built by some of the people behind the HoneyPot project.

This sounds very interesting; is on my “todo” list. I’m anxious to see their business model, and how they finance their free entry level subscription. Do their subscription plans cross-financen?

  • CloudFlare CDN

    Distribute your content around the world so it’s closer to your visitors (speeding up your site).

  • CloudFlare optimizer

    Web pages with ad servers and third party widgets load snappy on both mobile and computers.

  • CloudFlare security

    Protect your website from a range of online threats from spammers to SQL injection to DDOS.

  • CloudFlare analytics

    Get insight into all of your website’s traffic including threats and search engine crawlers.

  • CloudFlare apps

    CloudFlare apps makes installing web apps on your site fast, safe and one-click simple.

–jeroen

Posted in Development, Power User, Software Development, Web Development | Leave a Comment »

.NET Enums enumerated: System.ArgumentException was unhandled by user code Message=An item with the same key has already been added.

Posted by jpluimers on 2012/06/13

All .NET languages have a cool feature: enumerated types, for instance enum in C#Enum in VB.NET, or the enum in the  Oxygene language of Delphi Prism. You can even specify the underlying integral type.

It allows you to name values, which can make your code very readable.

It also allows you to assign an integer to each of those values, which allows you to map them to existing integers in the ‘real’ world. This is both a powerful and potentially uncool feature of enums (the other uncool feature is that though you can have bitflags in Enums, most .NET languages don’t have a Set type. You need Set Extensions to do things like Set operations on Card Suit bitflags using C# extension methods).

Because of my background in the 80s in MuSimp and Turbo Pascal, I’ve done quite a bit of enums and sets in the past, hence the mentioned C# enum extension methods mentioned above. While writing this article I also found out Extending’ the Enum Class to Validate the Enum Values with the Flags Attribute that mentions quite a bit of stuff that is complementary to my code and what you will see below.

The risk of assigning integer values on C# enum is that you can assign the same integer value to multiple enum elements.

For instance, this code will fail: Read the rest of this entry »

Posted in .NET, C#, C# 2.0, C# 3.0, C# 4.0, Development, Prism, Software Development, VB.NET | Leave a Comment »

SQL Server 2000 Reporting Services: copying the .RDL from your server (via: SQL Server Forums – Copy .rdl from ReportServer)

Posted by jpluimers on 2012/06/12

With old installations like Reporting Services 2000, you will often see that a few the reports on the server don’t match the ones in your version control system.

That’s why you sometimes want to download the .RDL files.

User nsaini shows on the SQLTeam forum:

It is easy …..

  1. Go to Report on Report Manager,
  2. Click properties of report,
  3. under the report definition you will see Edit and Update link…
  4. if you click on Edit you can open or Save the RDL files.

Tara Kizer shows how you get into the report manager: through this URL http://yourserver/reports

Easy :)

There are similar steps for SQL Server 2005 and SQL Server 2008.

If you have to do many of them, you can use Reporting Services Scripter to do it.

Even easier :)

–jeroen

via: SQL Server Forums – Copy .rdl from ReportServer.

Posted in Database Development, Development, Reporting Services, SQL Server, SQL Server 2000 | Leave a Comment »

ThinkPad: Invisible “UNCServer” window… is in fact not the only sloppy “ThinkVantage System Update” programming #fail

Posted by jpluimers on 2012/06/11

I sometimes noticed a window in the Alt-Tab order called “UNCServer” that I could not switch to.

Recently I started a bit of digging, which was surprisingly easy as the first hit told me:

It is part of the ThinkVantage System Update program. Even if you close the program, the process UNCServer remains active.

UNCServer is started by the TVSU (ThinkVantage System Update) program, and keeps running even if TVSU has been closed, and should be fixed in a future update:

02-25-2011 05:20 AM
After installing and running the latest TV SU V4.00.0046 (Win 7 / 64), I now have a new semi-permanent application running in the background (does not appear on the taskbar but does appear when I switch tasksand as an app in Windows Task Manager): UNCServer.exe
This task will go away after a Windows RESTART and not reappear until another invocation / termination  of TV SU.

08-30-2011 03:27 PM
This will be fixed in a future update.

So UNCServer has an “invisble” window. not on the taskbar but in the Alt-Tab order and got introduced in februari 2011; clearly some sloppy programming and a real failure that it has not yet been fixed.

That is not the only sloppy thing: upon starting TVSU, it removes any UNCServer.exe related firewall rules, and adds new rules permitting inbound TCP/UDP traffic to UNCServer.exe; talking about a potential security leak!

when you start lenovo system update, two inbound rules are programmatically inserted in the firewall that permit inbound TCP and UDP traffic to UNCServer.exe. I have found no way to avoid this. Every time I run system update, I have to delete the two new rules by hand. Even if I create blocking rules to block inbound traffic to UNCServer.exe, system update will eliminate my rules (any rules regarding this exe) and create its own ones.

–jeroen

via:

Posted in Power User | 5 Comments »