News Archives
(click month to expand)

- Todays News
- November 2007
- October 2007
- September 2007
- August 2007
- July 2007
- June 2007
|
Recent Technology News Stories
| Solentive News |
|
|
[click for more...]
|
We now have a French language version of the .NET Framework namespaces and types poster available for download ....( read more)
29/11/2007
[Link]
|
|
|
|
[click for more...]
|
|
Basic Calendar Control of ASP.NET 2.0 can be extended to cater one of most frequent requirement of tracking events, project milestones, history, schedule etc.
29/11/2007
[Link]
Neeraj Saluja
|
|
|
|
[click for more...]
|
Sitting for the first session as we're going through the XNA session with Pat McGee. The session was an intro to XNA (and filled with a room full of guys who haven't done any XNA work so it was a good audience) but was fun with the people involved. XNA on Xbox requires you to be connected to XBox Live and the Xbox networking was down so the guys couldn't demo anything on the XBox. However the fallback plan was to demo some networking on the laptops they had (of course when you come for an XNA demo you bring extra laptops and Xboxes, it's all about the hardware). Luckily it was John "The Pimp" Bristowe who saved the day and got the Xbox hooked up to the network so the demos were good to go.
29/11/2007
[Link]
|
|
|
|
[click for more...]
|
Everyone has a certain set of tasks that they simply do not want to perform.
Even if it seems like the sort of thing that others might (right or wrong) expect them to do as a part of their job.
Like some housekeepers don't do windows.
And some secretaries don't get coffee.
And I don't do dishes.
And GDI on Windows doesn't do supplementary characters.
Over in the microsoft.public.win32.programmer.international newsgroup, semi-regular reader Christian Kaiser asked:
Possibly I'm missing something, but I did not find any documentation on how to use GetCharABCWidths() with UTF16 surrogate pairs (additional planes). Is there any way to use that API (or the like)? The API gets UINT instead of TCHAR, so maybe by shifting the high surrogate and 'or'ing with the low one?
Christian
But Christian isn't missing anything here -- the only way that GDI can ever handle supplementary characters is as glyph ID values; it cannot handle either surrogate pairs or UTF-32 encoded Unicode Scalar Values.
Kind of unfortunate for the whole family of GDI functions like GetCharABCWidths, since only some of them will also take glyph ID values. And although all supplementary character processing does through Uniscribe, there are many pieces of the supplementary ranges that do not require any complex script processing other than this particular requirement, which just means that some functions have no supplementary equivalent.
Because GDI wouldn't know a supplementary character if that character walked up and bit it in the ass (thus inspiring the post's sponsor)....
This post brought to you by 𝌽 (U+1d33d, aka U+d834 U+df3d, aka TETRAGRAM FOR CLOSED MOUTH)
29/11/2007
[Link]
|
|
|
|
[click for more...]
|
|
jMVC.NET is an ASP.NET control to help you build UIs that change dynamically without postbacks, AJAX or tricky event handling.
29/11/2007
[Link]
Steven Sanderson
|
|
|
|
[click for more...]
|
How many Microsoft developers use the MSDN Library? Probably not many because I've just read a blog post where someone recommended not even installing it. I have to admit that I never even opened the Microsoft Document Explorer until I learned how to add my own notes as a custom help collection. Now I use the Microsoft Document Explorer every day. I'm a bit concerned that I am duplicating content that is already baked in so I've spent some time browsing the MSDN Library. You can save interesting help topics as favorites and here are a few of my favorites:
Colors by Lightness - ms-help://MS.VSCC.v80/MS.MSDN.v80/MS.WEBDEV.v10.en/css/workshop/author/dhtml/reference/colors/colors_light.htm
I have some color charts in my notes but these light colors are better for web design.
CSS Enhancements in Internet Explorer 6 - ms-help://MS.VSCC.v80/MS.MSDN.v80/MS.WEBDEV.v10.en/dhtmltechcol/dndhtml/cssenhancements.htm
This includes a diagram of the CSS box model.
C# Programming Guide - ms-help://MS.VSCC.v80/MS.MSDN.v80/MS.VisualStudio.v80.en/dv_csref/html/ac0f23a2-6bf3-4077-be99-538ae5fd3bc5.htm
Lots of information about some of the more advanced features of C# like Generics and Delegates.
Visual Studio 2005 IDE Tips and Tricks - http://msdn2.microsoft.com/en-us/library/bb245788(VS.80).aspx
Plenty of screen shots here. This is actually a live link because you can save any web address as a favorite in the Microsoft Document Explorer.
So why don't developers use the MSDN Library? There are several improvements that could be made to encourage you to use it. First and most importantly it needs to be customizable so you can take ownership of the information. You ought to be able to annotate the MSDN Library with comments and sticky notes like so many other applications allow. Unfortunately, you cannot even highlight text and retain it. It is possible to add your own help collection as I have done but this requires a lot of effort.
Second the search needs to be improved. I am unable to search my custom help collection and it does not even appear in the index. It would require a massive effort for me to create an index even though all of my help topics have keywords in their original web page format. I also never get anything in Local Help when I conduct a search no matter how I fiddle with the options to get it to search local help.
So what about the Community Content in the Online Help? Anyone can comment or add to the online content. Unfortunately, not many developers are bothering to do so except when the existing content has some really inaccurate information. This makes the Online Help's Community Content look like some sort of pathetic wiki that nobody bothers to contribute to.
29/11/2007
[Link]
|
|
|
|
[click for more...]
|
I so badly want to have support for multiple return values in C# instead of using out parameters.
Note: The following is only an example, we can use a struct or an object to create a data structure which will hold the value, but I only use this code for demonstration purpose.
int x,y,z; bool isHidden;
GetCords("MyElement", out x, out y, out z, out isHidden);
Instead of the code above, I want to do something like this:
Return 10,11,10,true;
var x,y,z,isHidden = GetCords("MyElement");
If I don’t care about the y and z return values I can instead write:
var x,,,isHidden = GetCords("MyElement");
Isn’t this beautiful?
hmm, when I’m thinking of beauty, I start to think about "The beauty is in the eye of the beholder" ;)
To confess something, the language LUA support this and I loved it when I created an add-on for World Of Warcraft.
29/11/2007
[Link]
|
|
|
|
[click for more...]
|
Get your new RTM bits now. I'm running Visual Studio 2008 on my box Soma announced it here today. The final RTM bits for Visual Studio 2008 and .NET Framework 3.5 are available. The trial editions of Visual Studio 2008 are online here . You can also get...( read more)
29/11/2007
[Link]
|
|
|
|
[click for more...]
|
In my previous post I referred you to a tutorial how to make a simple line chart with Silverlight 1.1. With this chart we were able to load data from an exported Excel XML Spreadsheet or from a XML serialized list of Point objects. I thought it would be great if the chart can consume data from a web service and thus stay updated without any user intervention. I decided to use Astoria service - it is new, unexplored, easy to understand and to use, the payload is low, etc. I believe that Astoria will be used by a lot AJAX-enabled and rich internet applications. If you are not familiar with Astoria go to its official labs site and learn! The technology is still in an early development phase and there is yet only a CTP version but you can find enough info to get started. Also there is a couple of useful blogs: Project Astoria Team Blog, Mike Flasko's Blog, Pablo Castro's blog.
Yesterday I continued my series of articles regarding how to build a simple line chart with Silverlight 1.1 (read here). I explained how to make an ADO.NET Entity Model, create Astoria service and then consume it from Silverlight. The sample chart loads data from a Northwind database and then represents it in a line chart. It is a pretty straight-forward way to keep the chart alive. The source code is also included (ASP.NET 3.5 app + silverlight control library + silverlight project) so you can try and use it for your needs. Prerequisites: Visual Studio 2008 Beta2, the Silverlight 1.1 Alpha Tools, the Astoria toolkit (VS2008 Beta2 Refresh) and the ADO.NET Entity Framework Beta 2.
29/11/2007
[Link]
|
|
|
|
[click for more...]
|
Sadly, it appears the answer is "yes". Specifically, the debugger has a huge limitation - one that's been there since Visual Studio 2005 (maybe even 2003). You can't set a breakpoint on the first line of an anonymous function. Consider, for example, the following: 1: <script type="text/javascript"> 2: function aFunc() 3: { 4: alert("hi"); 5: } 6: 7: var aFunc2 = function() 8: { 9: alert("hi, yourself"); 10: alert("what's your problem?"); 11: } 12: 13: aFunc(); 14: aFunc2(); 15: </script>
Here aFunc is a named function, and aFunc2 is a variable that points to an anonymous function. With the Visual Studio debugger, you can set a breakpoint on line 4, and line 10, but not line 9.
Why is this such a problem? Because most all the major Javascript libraries (at least Prototype, YUI, JQuery, and even, to a lesser extent, Microsoft's own ASP.NET AJAX) use anonymous functions up the ying yang - mostly for object methods. In other words, you can't set a breakpoint on the first line of most functions in most AJAX libraries. And if the function has only one line, yeah, you're screwed - no break-ey break-ey for you.
When I learned that this bug wasn't fixed in Visual Studio 2008 I was, in a word, dumbfounded. Isn't improved Javascript development one of the primary new features of VS2008?
Now, when I characterized the problem as being related to anonymous functions, that isn't quite right. In the above code, even if you give the aFunc2 function a name - "var aFunct2 = function theFunc()..."- the problem remains. There's a brief discussion of this issue on the ASP.NET forums here (note the date - March 2007), but the explanation rather nebulous. Whatever the root cause, it's a horrible limitation that I'm stunned wasn't addressed for RTM.
Guess it's back to Firebug for me. Or maybe it's time for another look at Aptana.
29/11/2007
[Link]
|
|
|
|
[click for more...]
|
I've posted on a couple of forums for SharePoint development and haven't received a response yet. The bottom line appears to be that regardless of whether or not you have WSS or MOSS loaded onto your machine, you will not get project or item templates for web parts. If someone knows what I'm missing, please post a comment. In VS 08, I was able to pull in an existing web part and it did compile but I have to make my own wsp, manifest.xml, elements.xml and solution.xml files. I'll also have to take...( read more)
29/11/2007
[Link]
|
|
|
|
[click for more...]
|
In this article, Handy Chang will explain about GDI+ in .NET Framework. If you haven't heard about GDI+, then GDI+ is a set of classes in .NET framework that deal with graphics. You can use GDI+ to draw custom drawing on the screen. GDI provides a layer of abstraction, hiding the differences between different video cards. You simply need to call the Windows API function to do the specific task, and internally the GDI figures out how to get to the client's particular video card to do whatever that...( read more)
29/11/2007
[Link]
|
|
|
|
[click for more...]
|
We just published a WF Hosting Quickstart sample today and it shows a common hosting model for building WF programs and running them in either of: ASP.NET and IIS Your NT Service A Console Host Okay the third is just a debugging convenience for the second....( read more)
29/11/2007
[Link]
|
|
|
|
[click for more...]
|
|
A C#, C++, Delphi, ActiveX and Java trace framework and a trace viewer: Tail, outputDebugString, event log, and with Log4J, Log4Net, and Microsoft Enterprise Instrumentation Framework (EIF) support. This also comes with full support for Pocket PC development (C++ and .NET).
29/11/2007
[Link]
Thierry Parent
|
|
|
|
[click for more...]
|
I've helped a few people over the last week who have run into issues with VS 2008 where it would immediately crash when the IDE was launched, or upon creating new projects (usually failing with a "Visual Studio has encountered an unexpected error" dialog). After debugging the issues, it turned out that they were caused by an older VS 2005 add-in that people had installed on their machines that wasn't compatible with VS 2008. In each of these specific cases it was an older version of the VisualSVN source control utility (note: Version 1.3.1 of VisualSVN works fine with VS 2008 - but older versions have problems). By default when you install VS 2008 on a machine that has VS 2005 on it, setup will use your existing settings to configure VS 2008, and will import your current VS 2005 preferences and add-in packages. If you see any crashes or issues (especially upon first launching the IDE) it could be that they are caused by one of your older add-in packages having some compatibility issue with VS 2008. If you run into a situation like this, one option to try is to launch VS 2008 in "safemode". This will launch the IDE with add-in packages disabled, and provides you with a good way to determine whether it might be an add-in causing the problem. You can launch VS 2008 in safemode by passing the /safemode switch to the VS 2008 devenv process from the command-line: If you discover that the problem you encountered is related to an add-in, you can use the Tools->Add-In Manager menu option to disable the add-in within the IDE. As a general best practice, I'd recommend that you always keep close track of the add-ins you have installed with Visual Studio, and make sure to periodically check for updates of them (especially when upgrading to VS 2008). If you do ever report an issue with VS - please also make sure to detail the add-in packages you have installed, as this can help a lot in our investigations. Hope this helps, Scott P.S. Ilya Ryzhenkov from JetBrains recently published a blog post that details the plans to update the popular ReSharper add-in for VS 2008. You can read it here.
29/11/2007
[Link]
|
|
|
|
[click for more...]
|
I love working with the new objects in JavaScript available in the AJAX framework. There is a new Sys.StringBuilder, which looks/acts/feels just like the server side StringBuilder does. There is also an extention to String for a format(mask, [args]); method that let's you do a nice relacement of a string mask. String.format("{0} is before {1}", "This", "That") give your a nice single string of "This is before That", just as you'd encounter on your Server side. But Sys.StringBuilder doesn't have an appendFormat(mask, [args]) like String does, it only has a append, and an appendLine() method. So let's create a new ScottCate.StringBuilder that inherits from Sys.StringBuilder, and prototype an appendFormat() on it. I'm not very happy with the arg0....arg9 in the appendFormat() signature, but that was easier than reflection style code against the arguments. Oh! And special thanks to my friend Michael, who helped me figure out the toString() problem I was having. Type.registerNamespace('ScottCate');
ScottCate.StringBuilder = function(len) {
ScottCate.StringBuilder.initializeBase(this, [len]);
}
ScottCate.StringBuilder.prototype = {
appendFormat: function(mask, arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {
this.append(String.format(mask, arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9));
},
toString: function(delimeter) {
return ScottCate.StringBuilder.callBaseMethod(this, "toString", [delimeter]);
}
}
ScottCate.StringBuilder.inheritsFrom(Sys.StringBuilder);
ScottCate.StringBuilder.registerClass('ScottCate.StringBuilder', Sys.StringBuilder);
function TestSB() {
var sb = new ScottCate.StringBuilder();
var mask = "{0} goes in front of {1}";
sb.appendFormat(mask, "This", "that");
alert(sb.toString());
}
29/11/2007
[Link]
|
|
|
|