Finally Rediscovered those hidden 64 bit drivers for Fujitsu Lifebook T4215

It’s a page that’s hidden away and difficult to land on from a Search….so I thought
I’d list it here for us all

http://www.pc-ap.fujitsu.com/support/drv_lb_vis64_t4215.html

 
LifeBook T4215

Windows Vista 64bit Drivers

Driver Name Readme file Version Size(bytes)
   Audio   V.6.10.0.5274A 5,352,330
   ACPI
Device Driver
(FUJ02B1)
  V.1.23 11,655
   ACPI
Device Driver
(FUJ02E3)
  V.1.20 11,434
   AuthenTec
Fingerprint Sensor Drive
r (For
model with Fingerprint sensor)
  V.7.7.0.68 206,889
   Bluetooth
Device Driver
(For model with Bluetooth module)
  V.5.00.07 29,491,323
   Fujitsu
Tablet Button Driver and Utility Device Driver
    654,550
   Intel
Matrix Storage Manager Device Driver
  V.6.2.1.1002 252,448
   LAN   V.9.16.2.3 164,250
   Modem   V.2.1.77 935,338
   SMSC
Fast Infrared Device Driver
  V.6.0.40001 55,209
   O2Mirco
MultiMedia Devicd Driver
  V.1.0.0A 2,236,416
   O2Micro
SmartCard Device Driver
  V.3.0.1.2 1,958,494
   TouchPad
Mouse
  V.9.1.11.0 6,710,882
   Video   V.7.14.10.1147R 10,535,384
   Wireless
LAN for model with Intel 3945ABG module
  V.10.6.0.46 3,701,179

Getting *a* version of Skype to run on x64 Windows

After much trialling and not much success…..Skype would install on my Windows Server
2008 x64 no problems, but at the sign-in screen the app would crash.

This happened in many different ways over many different Skype install permutations.

I think I’ve cracked it with an older version being the goods:

http://www.oldapps.com/download.php?oldappsid=SkypeSetup_3.0.0.190.exe

Cheers,

Mick.

Sun not doing well  – but they talk a good game

Sun not doing well – but they talk a good game

Sun
is not having a good quarter.  This reminded me of a few things that
have been bugging me lately.  I remember going to a live presentation of Scott
McNealy’s when he was creating a Java terminal/workstation.  I remember hearing
him say something to the effect of “This is the Windows-killer, in a year no one will
buy PCs with Windows – everyone including your secretaries will be using these workstations”. 
Of course, none of his predictions came to pass, and so the company still limps on.

My philosophy has always been that actually building a better technology and making
it a success has nothing to do with talking about how world-changing it will be. 
In fact, I have always thought the opposite.  I think showing people what a technology
is capable of is better than just talking about what it’s going to do in the market,
or that’s it’s the next “x-killer”.  Sure, you can say, “See how great the y
feature of this product is”, but predictions as to success and reach just sound dumb
to me.

I’ve always really disliked Scott McNealy, not because he was loud, and not because
he hated Microsoft, but
because he always talked about how this new thing Sun was doing was going to be the
Microsoft/Windows-killer
.  How about just making a great technology? And
then after it becomes the “X killer”, you can boast.

A number of things I’ve heard or seen lately remind me of Scott McNealy.  
I wish people would just do cool things or build cool things without talking about
what the effect of that thing will be.  Even if the person might be really cool
and super-smart, or even if the technology might be the most important thing to computer
science ever, how about just showing us what you’ve done or built.  Accolades
will naturally come given the right ideas or actions.

I’ve always thought that if you talk about how important something will be before
it becomes important, is the kiss of death (assuming it does or would have become
important).  Maybe that’s some universal force. Or maybe that’s because anyone
who feels the need to make those kinds of statements is actually showing us that they
are desperate and insecure, otherwise they would just be showing us features and we’d
grok how great the thing was.

While he was writing it, did Matz talk about how the language he was developing (Ruby ,
if you weren’t aware) was going to be overwhelmingly popular?  I’m guessing not
(certainly there isn’t any evidence of that).

Did the Beatles go around in 1962 talking about how their music would change the world? 
-No, they just made music they way they wanted to and it turned out to have a tremendous
impact on music. It had that effect without them talking about how great they were.

My philosophy: Do something great, don’t talk about it.  Even if you think/hope/are
convinced it will be great, just do it first.  You can talk later about how you
hoped it would be great, but talking about it first is lame.  Having self-confidence
is a positive, but talking about having self-confidence is lame.

“Never make forecasts, especially about the future. In no time, it will be a forgotten
memory.” – Samuel Goldwyn

Sorry for the non-technical post – but I just had to say this outloud somewhere. 
Nothing to see here – move along 😉



Check out my BizTalk
R2 Training.

ESB Guidance Webcast next Friday (May 9th 2008)

I’ll be doing a webcast next Friday on Microsoft’s ESB Guidance. It will be recorded if you can’t make it live. This will be the first in a series, but I am not going to commit to future dates yet as I have a ton of things going on and am looking at 80%+ travel for an extended period of time. I will however be doing more webcasts. Future topics will be more advanced, include themes such as a deeper drilldown into SOA governance, extending the ESB Guidance, etc.

Details for this first webcast are:

Title

Introduction to Microsoft’s ESB Guidance

Description

The Microsoft ESB Guidance uses Microsoft BizTalk Server 2006 R2 to support a loosely-coupled messaging architecture, and extends the functionality of BizTalk Server to provide a range of new capabilities focused on building robust, connected, service-oriented applications that incorporate itinerary-based service invocation for lightweight service composition, dynamic resolution of endpoints and maps, Web service and WS-* integration, fault management and reporting, and integration with third-party SOA governance solutions.

This webcast will be an introduction to Microsoft’s ESB Guidance. The goal of this session is to explore the architecture of Microsoft’s ESB Guidance 1.0, and explain how it can be applied to create ESB-based business solutions. We will examine the core components of the ESB Guidance, as well as the built-in extensibility points.

Agenda

%u00b7 Business drivers behind an ESB (Why do I care? Why do I want to do this?)

%u00b7 Architectural overview (What’s in the box? How does it work?)

%u00b7 Demos

Meeting Details

Friday May 9, 2008, 1:00-2:15pm Pacific GMT -8 (75 minutes)

Call for audio: 866-500-6738 or +1-203-480-8000, passcode: 221223#

Live Meeting: https://www.livemeeting.com/cc/microsoft/join?id=BTSBAG&role=attend&pw=35DKTQ

Technorati Tags: BizTalk,ESB Guidance,ESB,SOA

Neuron-ESB 2.0 Ships!

I’m late blogging about this (and others!) as I’ve been traveling (more on what I’ve been doing in a future post). Earlier this week, Neuron-ESB 2.0 shipped.

Neuron-ESB 2.0 is the culmination of a lot of hard work by a lot of smart people. It is an ESB product that is built from the ground up on WCF. The fact that this exists at all is a true testament to the brain trust at Neudesic, and shows just how deeply SOA/ESB thinking runs throughout the entire company. It’s an honor and a pleasure to work alongside these folks.

 

Best place to go if you want more information is http://NeuronEsb.com. My colleague David Pallman (“father” of Neuron-ESB, ex-Indigo team member, author, and my co-author on a future ESB book), posted a great architectural overview. He’s also did another blog post that talks about the management experience. This is likely the first two posts of many (now that he has a little time to breath :).

 

To ward off the inevitable question about “does this replace BizTalk?”, the answer is “no, not at all, in fact they work really well together”. I intend to elaborate on this point in a future post as I keep encountering (understandable) confusion on this question.

 

So, David, Marty, Curt, Brandon and everyone else that has been involved throughout Neuron-ESB’s development cycle: congratulations on a job well done!

 

Technorati Tags: Neuron-ESB,SOA,Neuron,ESB

 

———————————————————————————

 

 

NEUDESIC RELEASES NEURON-ESB 2.0

New version of Enterprise Service Bus software extends the Microsoft .NET Platform

IRVINE, CALIF. – April 29, 2008 – Neudesic, a leading provider of business solutions that leverage the capabilities of the Microsoft product line, announced today the release of version 2.0 of Neuron-ESB. Neuron-ESB is an Enterprise Service Bus that extends the Microsoft Platform by providing real-time messaging, integration and web service management. Neuron-ESB accelerates SOA adoption by helping companies successfully implement real-time integration across their enterprise, allowing timely response to changing events within their business.

Neuron-ESB is built on the Microsoft Windows Communication Framework (WCF) technology to provide real-time reliable messaging options for companies adopting SOA. Neuron-ESB manages all communication over the bus by sending messages over “Topics” using a publish-subscribe pattern and supports federated, geographic deployments. Neuron-ESB helps companies administer and automate complex tasks and is proven to significantly reduce the infrastructure, development, training and long term support costs for businesses developing SOA solutions.

“Neuron-ESB provides the messaging backbone for all of our critical applications,” said Jeffrey Sullivan, Chief Information Officer of ThinkCash. “Neuron-ESB allowed us to leverage our developers much more effectively while providing us the ability to go to market quickly with new solutions. We were able to shift our service development from the architect role to the more ubiquitous developer role while, decreasing our deployment time of new services by 50%. We started with just 1 developer who received 4 days of Neuron-ESB training. Within 6 months and no additional training, we had a 15X increase in the number of our internal developers who were able to use Neuron-ESB.”

Neuron-ESB 2.0 delivers a unique set of capabilities that extend and combine key strategic Microsoft technologies such as Microsoft BizTalk Server 2006 R2 & RFID, Microsoft Office SharePoint Server 3.0, Microsoft SQL Server, Microsoft Dynamics, Microsoft Office, .NET 3.0/3.5, Windows Communication Foundation (WCF), Windows Workflow Foundation (WF), WCF Line of Business Adapters and MSMQ. The synergy between Neuron-ESB and these products empower companies to develop more robust and business-aware applications with far less effort and complexity.

“Neuron-ESB 2.0 represents a significant evolution for the Microsoft Platform while addressing the Enterprise Service Bus needs of every customer running Microsoft Windows.  Our technology allows businesses to effectively leverage their Microsoft investments to deliver real-time solutions,” stated Marty Wasznicky, Vice President of Product Development. “Our product provides a new level of flexibility and ease of use that will help companies increase their productivity while reducing their development and operational costs. Moreover we’ve formed a strategic partnership with SOA Software and achieved certification as a Governed Service Platform through the Open Governance Initiative. Our customers can be confident that Neuron-ESB will enhance the fidelity of their Governance initiatives.”

“The Open Governance Initiative is rapidly gaining momentum amongst platform vendors, Governance solution providers, and end-user customers,” said Frank Martinez, Executive Vice President of SOA Software.  “The addition of Neuron-ESB, as a Microsoft .NET and WCF based ESB to the list of Governed Service Platforms highlights the importance of this certification for platform vendors.”

 

ASP.NET "Head" Rendering Issues!

Are you one of "those" ASP.NET web developers that care passionately about not only about writing "good" code, but writing "easily" understood and "readable" code? Are you looked upon as perhaps a little bit "obsessive" about your code? Do you understand what "semantic" really means?

If the answer is yes, have you ever looked closely at the HTML markup your ASP.NET code generates? I mean taken a really, REALLY close-up look?

If you have and you're anything like me, it bugs the hell out of you when adding something as simple as <head runat="server"> produces this mess in the <head> of your otherwise beautiful HTML markup.

Of course, there are ways to fix this mess. You could always forget using Master Pages and code each .aspx page by hand or even write your own base-page class like I've seen done. You could even revert to using "static" .html pages with JavaScript and forget about all the great features .NET brings to web development. Or you could just forget about ever creating truly "semantic" HTML markup using ASP.NET!

However, if you Google (or Live Search) long enough, you'll find a few posts about something called Adaptive Control Behavior in the MSDN Library and three very well hidden posts by Anatoly Lubarsky with some great sample code!

http://blogs.x2line.com/al/archive/2007/01/10/2773.aspx

http://blogs.x2line.com/al/archive/2007/01/31/2814.aspx

http://blogs.x2line.com/al/archive/2007/01/31/2816.aspx

These three posts and the sample code you can download here, turn this code …

into this markup …

which is exactly what the <head> element of any respectable HTML markup should look like! And yes, I know it doesn't matter one hoot to the browser (even IE6) which will faithfully render the web page correctly, but IT MATTERS TO ME.

I use "View Source" and Firebug almost every day to look at my own markup as well as the markup of sites who's authors I respect. I want my markup to look every bit as professional as the markup of a professional web "designer" such as Dan Cederholm, John Gruber or Andy Clarke.

Don't you?

Currently listening to: "Caravan of Dreams" by Peter White

Handling events with IIS/WAS hosting and WorkflowServiceHost

Handling events with IIS/WAS hosting and WorkflowServiceHost

If you are building Windows Workflow Foundation (WF) applications today (and you aren’t
building Sharepoint Workflows) you should be using WorkflowServiceHost for your hosting
environment.  Period, end of discussion (oh – well we can have more decision
about it – but its a fait accomplis at this point).

Especially if you are using WF to implement a service, using .NET 3.5 is a total no
brainer.

I was doing so the other day using a StateMachineWorkflow hosted in IIS and I was
getting an exception.  The exception (which I found after I attached the debugger
to IIS) was the dreaded (and pretty common) exception “QueueNotFound for queue X”. 

Now – if I was writing the hosting layer myself I would handle the WorkflowRuntime.WorkflowIdled
event and introspect on the WorkflowInstance using WorkflowInstance.GetWorkflowQueueData
method to see what queues where available at different points during the workflow
to help figure out what the problem was.  The problem was that I expected the
Queue to be there at that paritcular point of execution, and I wanted to verify that
fact using the WorkflowInstance.GetWorkflowQueueData method like this:

void WorkflowRuntime_WorkflowIdled(object sender,
System.Workflow.Runtime.WorkflowEventArgs e)
{
ReadOnlyCollection<WorkflowQueueInfo> queues;
queues = e.WorkflowInstance.GetWorkflowQueueData();
foreach (WorkflowQueueInfo
qi in queues)
{
Debug.WriteLine(“QueueName
: “
+ qi.QueueName);
foreach (string actName in qi.SubscribedActivityNames)
{
Debug.WriteLine(“Activity
subscribed: “
+ actName);
}
}
}

This is code I end up writing in just about every Workflow application I build because
it is just super useful to know what Queues a workflow is listening for at a particular
time.

So here was my problem – since I was using WorkflowServiceHost implicitly through
an svc file:

<%@
ServiceHost

Service=“WorkflowArtifacts.CalcWorkflow”

Factory=“System.ServiceModel.Activation.WorkflowServiceHostFactory” %>

using WorkflowServiceHostFactory, I had no place to get the WorkflowRuntime from the
WorkflowServiceHost.  If I was creating WorkflowServiceHost myself in code –
I could use the following code to get the WorkflowRuntime:

//sh
is the WorkflowServiceHost


WorkflowRuntimeBehavior wrb = sh.Description.Behaviors.Find<WorkflowRuntimeBehavior>();
wrb.WorkflowRuntime.WorkflowIdled += new EventHandler<System.Workflow.Runtime.WorkflowEventArgs>(WorkflowRuntime_WorkflowIdled);

Using the WorkflowRuntimeBehavior – I can get the WorkflowRuntime and then subscribe
to the WorkflowIdled event – and thus be able to the get data I wanted for debugging
my “QueueNotFound for queue X” exception. But alas – using the svc file I don’t ever
get access to the WorkflowServiceHost.

There is however a solution (at least one)  – ServiceHostFactoryBase.  One
of the cool extensibility mechanisms with WCF you can take advantage of when hosting
inside of IIS/WAS is creating your own ServiceHostFactory.  By default with code-based
services – WCF uses a ServiceHostFactory (which is a derived class from ServiceHostFactoryBase)
to create the WCF ServiceHost (which derives from ServiceHostBase) for hosting a code-based
service.  For Workflow Services – they use a WorkflowServiceHostFactory (as you
can see from my svc file) to create the WorkflowServiceHost.

Luckily (and I’m sure intention on the framework team’s part) WorkflowServiceHostFactory
isn’t sealed.  What this means is that I can create my own WorkflowServiceHostFactory
class – change the Factory attribute in my svc file to point to my factory – and then
insert the code I wanted to work with the WorkflowRuntime object.

Here’s my WorkflowServiceHostFactory class:

public class MyWorkflowServiceHostFactory
: WorkflowServiceHostFactory
{
public override System.ServiceModel.ServiceHostBase
CreateServiceHost(string constructorString,
Uri[] baseAddresses)
{
ServiceHostBase sh = base.CreateServiceHost(constructorString,
baseAddresses);
//sh
is the WorkflowServiceHost


WorkflowRuntimeBehavior wrb = sh.Description.Behaviors.Find<WorkflowRuntimeBehavior>();
wrb.WorkflowRuntime.WorkflowIdled += new EventHandler<System.Workflow.Runtime.WorkflowEventArgs>(WorkflowRuntime_WorkflowIdled);
return sh;

}

void WorkflowRuntime_WorkflowIdled(object sender,
System.Workflow.Runtime.WorkflowEventArgs e)
{
ReadOnlyCollection<WorkflowQueueInfo> queues;
queues = e.WorkflowInstance.GetWorkflowQueueData();
foreach (WorkflowQueueInfo
qi in queues)
{
Debug.WriteLine(“QueueName
: “
+ qi.QueueName);
foreach (string actName in qi.SubscribedActivityNames)
{
Debug.WriteLine(“Activity
subscribed: “
+ actName);
}
}
}
}

And my svc file:

<%@
ServiceHost

Service=“WorkflowArtifacts.AccumWorkflow”

Factory=“MyWorkflowServiceHostFactory” %>

And magically my service still works, and I am able to handle the WorkflowRuntime.WorkflowIdled
event – or any other WorkflowRuntime event I want.

 



Check out my BizTalk
R2 Training.

Running Virtual Machines under alternate user credentials on a Domain Controller

Introduction

Recently, I was experimenting with Team Foundation Server 2008, setting it up with SSL and running it within a test domain. For the Team Foundation Server, I couldn’t use the host installation as it runs Windows Server 2003 R2 x64 edition and TFS doesn’t support (see the TFS installation guide, under ‘Overview of Team Foundation Architecture’, ’64-bit Support in Team Foundation’) this setup in a single server scenario. So, I installed Virtual Server 2005 R2 SP1, installed TFS on top, configure SSL and voila, a working TFS setup.

When I shut down the host computer, I want the virtual machine of TFS to save state and come back up again when the host is turned on again. This can be done in Virtual Server using an alternative use running the actual Virtual Machine instance. Trying to set this up in a least privilege way proved not to be obvious from documentation, so this blog entry documents what I did for posterity (and myself ;-)).

Outline

Here’s what needs to be done in order to circumvent obscure error messages:

1.       We need a new user group so the account we’ll use doesn’t belong to default domain users and inherits no permissions.

2.       We need a new user to run the Virtual Machine instance, the user should belong to this group only.

3.       The user needs to be given ‘Local on locally’ rights.

4.       Permissions need to be set on the folder containing network configuration information for Virtual Server.

5.       Permissions need to be set on the folder containing the Virtual Machine and the actual files (*.vhd, .vmc) making up the Virtual Machine.

6.       The Virtual Machine needs to be configured to use the new user.

Instuctions

Let’s configure the necessary elements.

1. Create a new group

Create a new group within the Active Directory Users and Computers MMC snapin (found under Administration Tools):

2. Create a new user

Create the user which is to run the specific Virtual Machine (done from the same MMC snap-in), add it to the ’empty’ group, set the ’empty’ group as it’s Primary Group and remove the ‘Domain Users’ group from the list. After this, your user overview should resemble this image:

3. Assign ‘Log on locally’ rights to the user

This step is critical in getting the Virtual Machine running under the new user context. Steps to achieve the appropriate right setting are described here. If the user doesn’t receive the ‘Log on locally’ right, Virtual Server will display an error: ‘The account name and password could not be set. The virtual machine account could not be set. The account has not been granted the requested logon type.‘. Make sure the security policy is updated before using the account.

4. Set permissions for the used virtual network interface

Now that we have the user and it’s group configured, let’s set the appropriate permissions for the user to make use of the configured network. Mind you, these instructions will only allow the user to use the network it’s given access to from the instructions, the ‘local network only’ et al will not work as the user has no rights on the files used for those configurations.

The virtual network configuration files for Virtual Server are stored in %SystemDrive%\Documents and Settings\All Users\Application Data\Microsoft\Virtual Server\Virtual Networks. The user needs permissions as specified in order to use the network. If permissions are set incorrectly, the Virtual Machine will not have network access.

5. Set permissions on Virtual Machine folders and files

In order to start up the Virtual Machine, save state, etc, the new user needs access rights on the folder storing the actual files making up the Virtual Machine as well as specific rights on the Virtual Machine files. The folder structure containing my Virtual Machine files is:

%SystemDrive%\vms\<Virtual Machine>

First, let’s set the appropriate rights on the folder hosting all Virtual Machines:

Now, let’s set the permissions for the appropriate Virtual Machine (‘tfs‘) folder:

Lastly, set up permissions for the Virtual Machine files (my TFS has 3: tfs.vmc, tfs.vhd and sql.vhd):

6. Configure the Virtual Machine

All permissions are set, we’re ready to configure Virtual Server to run the Virtual Machine under the new user context:

Wrap up

That’s it! We’ve configured the Virtual Machine to run under a user context which has the least amount of privileges it needs to function correctly. The Virtual Machine will save it’s state when the host is shut down and will automatically turn back on when the host comes back online.

HTH