Thursday, March 11, 2010
New server(s)
|
A little bit of downtime people as I ahve just moved servers.
|
Wednesday, December 23, 2009
happy xmas and also new things to report
|
x2codecreatin is makin more and more strives in the ai arena
|
Monday, September 07, 2009
Running your C# application without .NET framework
|
Afternoon guys,
Just a quick post about x2codecreatives new application hardening services.
We can take any .NET application, improve its memory and CPU footprint, compile it into native or machine code, and reduce the installation size.
So your .NET application can run on any machine, irregardless of wether the .NET framework is installed.
An example would be:
A WPF application, communicating to a WCF Web Service runningon a discrete TCP port. Your thinking its impossible to get that to run with no .NET framework? Your wrong.
We have optimized and deployed applications such as Windows Services, ASP.NET web applications and COM-exposed managed assemblies to clients running Windows 98.
We can also take your .NET application and get it to run on a legacy machine low memory and CPU resources.
Impressed? Just contact us.
Running .NET application without .NET framework
|
Thursday, September 03, 2009
Free open source asp.net ecommerce web cart software
Sunday, August 02, 2009
DOTNUTSHELL no more. Its x2code creative
Tuesday, July 28, 2009
expenio.com
x2codecreative as we are known now, have been busy over the last few months developing http://www.expenio.com/.
Its a new colloborative media sharing website, allowing you to post music and video, and games and documents as well as have the abilioty to make money form the revenue generated.
check http://www.expenio.com/
|
Tuesday, January 27, 2009
Web 2.0 Ajax projects
|
DOTNUTSHELL is contantly working with clients to create feature rich, database driven websites using the current leading technologies:
Here is one project our developers have worked on:


The project used current AJAX techniques and frameworks to create a rich and responsive user interface for businesses using the BusinessWise intranet portal.
|
Saturday, January 17, 2009
Silverlight 2 work
What has DOTNUTSHELL been up to?
|
I was recently asked to describe what WellStart is all about at a technical level:
Removing the need for desktop databases in high performance software systems by using bleeding edge object relational mapping techniques and .NET technologies to store and optimise data collections in memory. Data management tasks in object-oriented (OO) programming are typically implemented by manipulating objects, which are almost always non-scalar values. For example, consider an address book entry that represents a single person along with zero or more phone numbers and zero or more addresses. The problem is, that we need fast access to large collctions of object without effecting the integrity of the data coming back, which simply canot be done with a standard SQL databases, so WellStart introduces a new database engine which stores collections in memory, and then wraps an SQL-like layer around these collecions dramatically speeding up access to the data while maintaining integrity on the objects. WellStart also introduces selective persistence. In programming, persistence refers specifically to the ability to retain data structures between program executions, either at the interface level (i.e the GUI) and the data level (i.e database). WellStart's persistence engine relies on the ability of the aplication to selectively infer (as in implicitly be able to tell) which objects in the datastore require updating, even before they have been created, by inspecting the business logic. This reduces the execution overhead because only objects whch are more likely to require upating are updated and execution code is generated for these updates.
Some screen shots of WellStart:

Media wall:

Graphing module:

WellStart also introduces new technologies which mesh interpreted languages with native languages, allowing applications to utilse a rich user interface while still using standard system calls and services at the the lowest level to keep applications efficient.
This means that WellStart implements a strict version of model view controller, where each logicial layer is seperated into very logical partitions, allowing us to plug different business layers into the application without having any noticable effect on the user interface and its interaction. It also introduces a new data exhange mechanism which dynamicaly converts compiled cass types into types which can be used directly by ActionScript.
Advanced Software Development
|
Tuesday, December 16, 2008
Silverlight 2 - Get the host address of the site hosting a XAP
|
More C# Silverlight 2 tidbits.
public string GetHost()
{
string domain = string.Empty;
try
{
string htmloc = HtmlPage.Window.Eval("window.location.href;") as string;
domain = htmloc.Replace("http://", String.Empty);
if (domain.Contains("/"))
{
domain = domain.Substring(0, domain.IndexOf("/"));
}
}
catch
{
return string.Empty;
}
return domain;
}
This returns the host name of the hosting website.
Custom software development
|
Thursday, November 13, 2008
Silverlight 2: Dynamically loadng a XAP
|
Here is a little method which will dynamically load a XAP and instantiate a class inside it, This is especially useful for a custom Silverlight loader.
Custom Software Development
public static object CreateFromXAP(Stream package, string objectTypeName, string mainass)
{
// Extract the AppManifest from the XAP package
string appManifestString = new StreamReader(
System.Windows. Application.GetResourceStream(
new StreamResourceInfo(package, null),
new Uri("AppManifest.xaml", UriKind.Relative)
).Stream).ReadToEnd();
// Use the XamlReader to parse the AppManifest into managed objects
//var deployment = System.Windows.Markup.XamlReader.Load(appManifestString);
XElement deploymentRoot = XDocument.Parse(appManifestString).Root;
IList<XElement> deploymentParts = (from assemblyParts in deploymentRoot.Elements().Elements()
select assemblyParts).ToList();
// Keep track of the main assembly,
// we'll assume that the element to create is located here.
Assembly mainAssembly = null;
// Walk all of the assemblies and load them into the CLR.
// This will load any dependent assemblies.
foreach (XElement xElement in deploymentParts)
{
string source = xElement.Attribute("Source").Value;
AssemblyPart asmPart = new AssemblyPart();
StreamResourceInfo streamInfo = System.Windows.Application.GetResourceStream(
new StreamResourceInfo(package, "application/binary"),
new Uri(source, UriKind.Relative));
Assembly assembly = asmPart.Load(streamInfo.Stream);
if (assembly.FullName.Split(',')[0] == mainass)
mainAssembly = assembly;
}
// Create a new instance of the object from the main assembly
Type objectType = mainAssembly.GetType(objectTypeName);
return Activator.CreateInstance(objectType);
}
|
Friday, October 17, 2008
Silverlight 2 : Get the Height and Width of a dynamically loaded image
|
This should help you all. SL won't know the dimensions of an image until its fully downloaded and rendered.
Have it!!
Uri path = new Uri(“YOUR URL”, UriKind.Absolute);
BitmapImage bitmapImage = new BitmapImage();
bitmapImage.UriSource = path;
bitmapImage.DownloadProgress +=
new EventHandler<DownloadProgressEventArgs>(bitmapImage_DownloadProgress);
yourImage = new Image(); yourImage.Source = bitmapImage; void bitmapImage_DownloadProgress(object sender, DownloadProgressEventArgs e) { if (e.Progress == 100) { Dispatcher.BeginInvoke(delegate() { GetSizes(); }); } }
void GetSizes (){ double height = yourImage.ActualHeight; double width = yourImage.ActualWidth; } Custom Software Development Company
|
Silverlight 2 launched and loaded
|
Microsoft finally launched Silverlight 2.
Its actually a really solid platform.
Don't forget that DOTNUTSHELL do Silverlight Custom Software Development
|
Sunday, October 05, 2008
FREE SEO reports which should help new websites with initial SEO stuff
|
We at DOTNUTSHELL are a nice bunch. We believe in giving. So, our SEO services, and initial report and consultation are now free.
Have a look on the DOTNUTSHELL site here: Free SEO Tips and Report
|
eCommerce Software
|
Just a quick note to observers that the ecanecommerce site is being updated as ecan ecommerce is maturing to a state that we can start shipping the lite version, as well as the managed and bespoke version.
More can be found here: eCommerce Software.
|
Wednesday, September 24, 2008
Anonymous delegates for localised implementations with a return value
|
So, you have a localised code block, in a foreach statement and you wish to use anonymous methods to structure the code elegantly.
Here is how:
//define your delegate with your return type:
delegate System.Collections.Generic.List<String> ListOfStrings();
var data = new System.Collections.Generic.Dictionary<String, System.Collections.Generic.List<String>>();
//the above will define your dictionary
data.Add("myself"), new ListOfStrings(
delegate{
System.Collections.Generic.List<String> result = new System.Collections.Generic.List<String>();
result.Add("child1");
result.Add("child2");
result.Add("child3");
return result;
}
).Invoke());
Software Development Services
|
Lambda and other such like interesting code snippets
|
Up until now, we have relied on defined delegates and anoymous delegates to do the brunt of work when it comes to isolated code blocks which are repetitive but localised to a method. But with C# 3.0, we are provided with Lambda expressions aswell.
You can find software coding samples here.
|
Extension methods in C#
|
You cna find the full post on my software development homepage.
Extension methods are a new feature added to the C# specifiation. They allow you to dynamically add methods to classes from the context of your own application. It is especially usefull for code re-usability and keeps messy static and instance oriented functions to their variable scope.
An example would be to add a regular expresion extension directly to the string class.
|
Thursday, September 18, 2008
VB.NET - Working out wether your process window is topmost and has focus
|
There isn't much on the Internet about this,
so thought I would ost this smidge of information:
Private Declare Function GetForegroundWindow Lib "user32" () As IntPtr
Private Function IsFromMe() As Boolean
Dim lngPid As Integer
Dim MyProc As Integer
Try
MyProc = System.Diagnostics.Process.GetCurrentProcess().Id
Dim window = GetForegroundWindow()
GetWindowThreadProcessId(window, lngPid)
Dim item = GetFocus()
'' System.Windows.Forms.MessageBox.Show(lngPid.ToString())
Catch ex As Exception
'' System.Windows.Forms.MessageBox.Show(ex.Message)
End Try
If MyProc = lngPid Then
Return True
Else
Return False
End If
End Function
Rapid software development
|
Wednesday, September 03, 2008
Google Chrome
|
Wow. I am no lover of Google, but Chrome is a breath of fresh air. Its fast and speedy and for a developer, its Javascript debugging is just awesome. Its actually a very neat browser.
I read an interesting piece on it which I have posted on DOT's website.
You can find it at 'Google Chrome as a Cloud OS'.
I think anyone with a brain cell should download a copy now.
Impressive stuff Google.
|