tag:blogger.com,1999:blog-7202014794254406682024-03-19T04:21:30.424+01:00ded's blogUnknownnoreply@blogger.comBlogger63125tag:blogger.com,1999:blog-720201479425440668.post-35430008704028399192019-08-14T22:07:00.001+02:002022-03-05T17:26:29.106+01:00[Solved] Windows Update BSODOne of my device could not install latest Windows updates. It was always crashing with a BSOD:<pre>ATTEMPTED SWITCH FROM DPC</pre> I spent many hours trying to solve the problem.
<ul><li>Running Windows Troubleshoot for Windows Update could repair Windows Update Database but this was not enough.</li>
<li>Running the command below did not help either :<pre>sfc /scannow</pre></li>
<li>I tried all steps in this <a href="https://www.drivereasy.com/knowledge/attempted-switch-from-dpc-blue-screen-error-on-windows-10-solved/">driver easy knowledge</a> post :<ul><li>Memory check</li>
<li>Disk check</li>
<li>Updating all drivers</li>
<li>Full Windows Reset</li></ul></li></ul>Manually updating all drivers is fairly easy with <a href="https://www.drivereasy.com/">drivereasy</a> : the free version lets you download all drivers. Then you just need to manually update drivers with the Device Manager. Just browse to drivereasy AppData folder when selecting whre to look for driver update.<br /><br />Anyway, all these attempts failed to solve the problem. Running Windows Update after a full reset still crashed with a BSOD.<br /><br />Other ideas I tried :<ul><li>Retrying with most services and scheduled tasks disabled with msconfig.</li><li>Download and install windows10.0-kb4507435-x86_05aa394fcfdd3dbc72e2da2f41ae96b30d9496b9.msu</li></ul>
A few weeks later, I tried Window Update again. Windows cumulative update was now <a href="https://support.microsoft.com/en-us/help/4512501/windows-10-update-kb4512501">KB4512501</a>. No more BSOD but installing updates still failed:<pre>Some update files are missing or have problems.
We'll try to download the upgrade again later. Error code: (0x80073712)</pre>I eventually found out Errors in C:\Windows\Logs\CBS\CBS.log. It seems many manifests were corrupted in WinSxS folder. Then I found and launched the following command (in an elevated shell) :<pre>dism /online /Cleanup-Image /StartComponentCleanup</pre>A couple hours later, I also run this command:<pre>dism /online /Cleanup-Image /RestoreHealth</pre>The first time, this command caused a reboot after a BugCheck. Second attempt succeeded.<br /><br />In the end, I retried Windows Update and August 19 cumulative update passed successfully.<br /><br />HTH
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-720201479425440668.post-61752725063073372972014-11-01T21:19:00.002+01:002022-03-05T17:27:20.758+01:00[Solved] Galaxy S3 Not ChargingI applied <a href="http://www.technobezz.com/fix-slow-charging-problem-samsung-galaxy-s3/">technobezz</a> first solution and it just worked :<ul><li>*#9900#</li><li>Low Battery Dump : On</li></ul>What does *Low Battery Dump* does BTW ?Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-720201479425440668.post-72164946052072339682014-07-10T00:14:00.002+02:002022-03-05T17:29:36.953+01:00[Solved] Scm-Manager high cpu loadWe use git. Our repo size is 2 GB with 60 K files and 14 K commits.<br />
<br />
Suddenly, scm-manager (1.38) was using all the CPU.<br />
<br />
And we had strange failures in TeamCity checkouts like :
<pre>remote: internal server error
fatal: protocol error: bad pack header</pre>
The problem was that our central bare repository had never been garbage collected (with git gc). Even running git gc was failing with the error<pre>warning: packfile ... cannot be accessed
fatal: failed to read object ...: Too many open files
error: failed to run repack</pre>
Here is what I did :<ul><li>bare clone the repo on another machine</li><li>run git gc</li><li>bare clone the previous repo to the original machine</li><li>run git gc</li><li>switch last repo with the broken one (et voilà)</li></ul>
HTH<br />
<br />
Ref : <a href="https://groups.google.com/forum/#!topic/git-users/6XChKIqdG_U">https://groups.google.com/forum/#!topic/git-users/6XChKIqdG_U</a>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-720201479425440668.post-55183481739308902142014-06-15T22:15:00.003+02:002022-03-05T17:29:59.908+01:00Test Driven FizzBuzzHere is my solution when I apply TDD on FizzBuzz using C# :<pre name="code" class="c-sharp">class FizzBuzz
{
private readonly List<Tuple<int, string>> rules;
public FizzBuzz()
: this(new Tuple<int, string>[0])
{
}
public FizzBuzz(IEnumerable<Tuple<int, string>> rules)
{
this.rules = rules.ToList();
}
public string Convert(int i)
{
var label = string.Join("", rules.Where(r => i % r.Item1 == 0).Select(r => r.Item2));
return label.Length > 0 ? label : i.ToString();
}
}
[TestFixture]
public class FizzBuzzTest
{
[TestCase(1, "1")]
[TestCase(2, "2")]
[TestCase(3, "3")]
public void TestNoRule(int i, string value)
{
Assert.AreEqual(value, new FizzBuzz().Convert(i));
}
[TestCase(1, "1")]
[TestCase(2, "2")]
[TestCase(3, "Fizz")]
public void TestFizz(int i, string value)
{
Assert.AreEqual(value, new FizzBuzz(new[] { new Tuple<int, string>(3, "Fizz") }).Convert(i));
}
[TestCase(1, "1")]
[TestCase(2, "2")]
[TestCase(3, "3")]
[TestCase(4, "4")]
[TestCase(5, "Buzz")]
public void TestBuzz(int i, string value)
{
Assert.AreEqual(value, new FizzBuzz(new[] { new Tuple<int, string>(5, "Buzz") }).Convert(i));
}
[TestCase(15, "FizzBuzz")]
public void TestFizzBuzz(int i, string value)
{
var rules = new[] {
new Tuple<int, string>(3, "Fizz"),
new Tuple<int, string>(5, "Buzz"),
};
Assert.AreEqual(value, new FizzBuzz(rules).Convert(i));
}
[Test] public void TestFizzBuzz1_100()
{
var rules = new[] {
new Tuple<int, string>(3, "Fizz"),
new Tuple<int, string>(5, "Buzz"),
};
var fizzBuzz = new FizzBuzz(rules);
for (int i = 1; i < 100; i++)
Console.WriteLine(fizzBuzz.Convert(i));
}
}</pre>
See also :<ul><li><a href="http://vimeo.com/97516288">Advanced TDD</a> (vimeo) by Uncle Bob at NDC 2014</li><li><a href="http://fsharpforfunandprofit.com/posts/recipe-part2/">Railway oriented programming</a> applied to <a href="http://fsharpforfunandprofit.com/posts/railway-oriented-programming-carbonated/">fizzbuzz</a> with F#</li></ul>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-720201479425440668.post-64420844687887890432014-04-12T14:03:00.003+02:002022-03-05T17:30:17.820+01:00Samsung vs Google CalendarOn my Samsung Galaxy S3, I have two calendar applications : Google Calendar and S Planner (S Calendrier in French). Both applications are able to display all phone calendars :<ul><li><b>My Calendar :</b> To display contact birthdays</li><li><b>Samsung calendar</b></li><li><b>Google calendar(s) :</b> your own Google calendar(s) and your contacts'</li></ul>If you sync these calendars, this will only keep in sync your phone calendars with the various clouds (Google, Samsung, Facebook, etc.). But this will not sync calendars between one another.<br />
Sometimes, Samsung Calendar becomes the default when you create new events. I have seen lots of people on the web looking for ways to import/export from Samsung Calendar to Google, or to sync them...<br />
Once an event is created, AFAIK, it is not possible on my phone to move the event to another calendar.<br />
I have found a solution : with Kies Air opened in your computer browse, you can move events to another calendar.<br />
How to proceed :<ul><li>(phone) Open Samsung Kies Air app</li><li>(computer) Open Kies Air in your browser : http://phone.ip:8080</li><li>(computer) Enter PIN displayed on your phone</li><li>(computer) Open Calendar and edit events to move them to other calendars</li></ul>
HTHUnknownnoreply@blogger.com0tag:blogger.com,1999:blog-720201479425440668.post-68324625046203662892013-08-17T12:35:00.003+02:002022-03-05T17:30:44.469+01:00GitExtensions ContextMenuHandlersHere is <a href="https://groups.google.com/forum/#!topic/msysgit/kZIvC8uy8tc">a thread</a> about duplicated menu entries in GitExtensions Explorer handlers.Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-720201479425440668.post-91497126361843468032013-08-03T00:14:00.001+02:002022-03-05T17:30:57.336+01:00Move User Profile FolderI had to move my user profile folder to another drive (because I could'nt wait for gparted to move my data).
I am using Windows 7 Professionnal (in French).
Context :<ul><li>Moved profile : ded</li><li>Current (old) profile path : c:\Users\ded</li><li>Future (new) profile path : D:\ded</li></ul>Here is what I did :<ul><li>Create an(other) admin account (for example: root)</li><li>Close current ded session</li><li>Create d:\ded</li><li>Fix d:\ded <a href="https://en.wikipedia.org/wiki/Access_control_list">ACL</a> (you would need to uncheck include parent security)</li></ul>My profile folder security is :<ul><li>Administrators : Full Control, recursively</li><li>System : Full Control, recursively</li><li>ded : Full Control, recursively</li><li>root : Full Control, recursively</li><li>HomeUsers : see below</li></ul>(It seems that root what added automatically under the hood)<br/>
<br/>
HomeUsers <a href="http://technet.microsoft.com/en-us/library/cc787794(v=ws.10).aspx">permissions</a> are :<ul><li>Traverse folder / execute file</li><li>List folder / read data</li><li>Read attributes</li><li>Read extended attributes</li><li>Read permissions</li></ul>HomeUsers permissions only apply to this folder only (not sub-folders nor files).
French translation :<ul><li>Parcours du dossier/exécuter le fichier</li><li>Liste du dossier/lecture des données</li><li>Attributs de lecture</li><li>Lecture des attributs étendus</li><li>Autorisations de lecture</li></ul>Let's continue :<ul><li>Copy all files with robocopy (keep permissions, etc.)</li></ul><pre name="code" class="c-sharp">robocopy c:\users\ded d:\ded /e /copyall /sl /xj /np /nfl /r:1</pre><ul><li>Restart robocopy to find what failed</li></ul><pre name="code" class="c-sharp">robocopy c:\Users\ded d:\ded /e /copyall /sl /xj /np /nfl /ndl /r:1 /w:1 /x</pre>In my case I only had problems with :<ul><li>junctions (not handled by robocopy)</li><li>Some tmp files (ignored)</li><li>Cardspace files (access denied!)</li><li>Google drive folder (denied)</li></ul>To find junctions run :<pre name="code" class="c-sharp">dir c:\users\%username% /al /s</pre>I used the following script to create junctions in my new profile folder. *BEWARE !* This script is for a French O/S.<pre name="code" class="c-sharp">@echo off
:: é = ‚
:: è = Š
setlocal
set new_home=d:\%username%
call :mk_junction "Application Data" "AppData\Roaming"
call :mk_junction "Cookies" "AppData\Roaming\Microsoft\Windows\Cookies"
call :mk_junction "Local Settings" "AppData\Local"
call :mk_junction "Menu D‚marrer" "AppData\Roaming\Microsoft\Windows\Start Menu"
call :mk_junction "Mes documents" "Documents"
call :mk_junction "ModŠles" "AppData\Roaming\Microsoft\Windows\Templates"
call :mk_junction "Recent" "AppData\Roaming\Microsoft\Windows\Recent"
call :mk_junction "SendTo" "AppData\Roaming\Microsoft\Windows\SendTo"
call :mk_junction "Voisinage d'impression" "AppData\Roaming\Microsoft\Windows\Printer Shortcuts"
call :mk_junction "Voisinage r‚seau" "AppData\Roaming\Microsoft\Windows\Network Shortcuts"
call :mk_junction "AppData\Local\Application Data" "AppData\Local"
call :mk_junction "AppData\Local\Historique" "AppData\Local\Microsoft\Windows\History"
call :mk_junction "AppData\Local\Temporary Internet Files" "AppData\Local\Microsoft\Windows\Temporary Internet Files"
call :mk_junction "AppData\Roaming\Microsoft\Windows\Start Menu\Programmes" "AppData\Roaming\Microsoft\Windows\Start Menu\Programs"
call :mk_junction "Documents\Ma musique" "Music"
call :mk_junction "Documents\Mes images" "Pictures"
call :mk_junction "Documents\Mes vid‚os" "Videos"
endlocal
goto :eof
:mk_junction
set link=%1
set target=%2
set link="%new_home%\%link:~1,-1%"
set target="%new_home%\%target:~1,-1%"
echo %link% -^> %target%
if exist %link% (
echo found %link%, skipped
goto :eof
)
mklink /J %link% %target%
::icacls %link% /deny Everyone:(S,RD) /L
icacls %link% /deny "Tout le monde":(S,RD) /L
icacls %link% /setowner SYSTEM /L
attrib +H +S +I %link% /L
goto :eof</pre>For cardspace files, I suspected a mismatch between Administrateurs (French, unknown group) and Administrators (English, valid group) accounts. I managed to move or copy the files with cygwin mv or cp. Afterwards, I just did *attrib +h* on cardspace folder and files (CardSpaceSP2.db and CardSpaceSP2.db.shadow).<br/><br/>
I ignored Google Drive, Google recreate it automatically (it wouldn't use a copy of the original folder).<br/><br/>
Final step :<pre name="code" class="c-sharp">move c:\users\ded c:\users\ded.old
mklink /j c:\users\ded d:\ded</pre>And fix d:\ded permissions (same as above).<br/><br/>
Now I reopen a session with ded users with my new user profile folder.<br/><br/>
HTHUnknownnoreply@blogger.com0tag:blogger.com,1999:blog-720201479425440668.post-45580957644922198582013-05-10T17:10:00.003+02:002022-03-05T17:31:14.927+01:00Saving OLEObject Content To FileIt is possible with OLE to embed files in Excel workbooks and saves them back to disk (I know OLE is not cutting edge technology).
To embed some file :<ul><li>Insert ribbon menu</li><li>Object (in Text)</li><li>From file tab</li><li>(Browse to file)</li></ul>
If your file is another Office document, saving it back to disk is trivial. But here I want to embed any file (e.g. txt, xml).
<a href="http://social.msdn.microsoft.com/forums/en-US/vsto/thread/1ab7a178-8021-4c67-a14b-5031a254fd9c">Anton post</a> gave me the directions. I pushed further the analysis and eventually reversed engineered the OLEObject MemoryStream content :<table><tr><td>0x2 0x0</td><td>header</td></tr>
<tr><td>string\0</td><td>file name</td></tr>
<tr><td>string\0</td><td>file path</td></tr>
<tr><td>0x0 0x0 0x3 0x0</td><td>(native header ?)</td></tr>
<tr><td>int</td><td>temp file path length</td></tr>
<tr><td>string\0</td><td>temp file path</td></tr>
<tr><td>int</td><td>content length</td></tr>
<tr><td>bytes</td><td>content</td></tr>
<tr><td>int</td><td>temp file path utf16 length</td></tr>
<tr><td>bytes</td><td>temp file path utf16</td></tr>
<tr><td>int</td><td>file name utf16 length</td></tr>
<tr><td>bytes</td><td>file name utf16</td></tr>
<tr><td>int</td><td>file path utf16 length</td></tr>
<tr><td>bytes</td><td>file path utf16</td></tr></table>Note : header is different for non Package OLE objects like Office documents or pdf.<br/>
<br/>
In this sample program, I load some excel workbook and for each embedded ole object, I display its name and its content :<pre name="code" class="c-sharp">[STAThread]
static void Main(string[] args)
{
var excel = new Application();
try
{
Workbook workbook = excel.Workbooks.Open(@"D:\Classeur1.xlsx");
foreach (Worksheet worksheet in workbook.Worksheets)
{
foreach (OLEObject ole in worksheet.OLEObjects())
{
Console.WriteLine("name : {0}", ole.Name);
if (ole.progID == "Package")
{
string content = ole.GetContent();
if (content != null)
Console.WriteLine(content);
}
}
}
workbook.Close();
}
finally
{
excel.Quit();
}
Console.Write("Press a key...");
Console.Read();
}</pre>The progID has "Package" value when the embedded content is not standard OLE content. The GetContent extension method gets a MemoryStream from the OLEObject and loads the content from the stream :<pre name="code" class="c-sharp">static class OLEExtensions
{
public static string GetContent(this OLEObject ole)
{
ole.Copy();
System.Windows.Forms.IDataObject data = System.Windows.Forms.Clipboard.GetDataObject();
object obj = data.GetData("Native");
System.Windows.Forms.Clipboard.SetDataObject("");
var ms = obj as MemoryStream;
if (ms != null)
return ms.GetOLEContent();
return null;
}
}</pre>We copy the OLE object to the clipboard to get the MemoryStream. The <b>STAThread</b> attribute is required in Main method to avoid some NullReferenceException when calling GetData method. The GetOLEContent extension method extracts the content from the stream thanks to the reverse engineered stream structure :<pre name="code" class="c-sharp">static class OLEStreamExtensions
{
public static int ReadHeader(this MemoryStream ms)
{
var header = new byte[2];
int read = ms.Read(header, 0, header.Length);
if (read != header.Length)
throw new FormatException("End of stream while reading header");
if (header[0] != 2 || header[1] != 0)
throw new FormatException("Bad header");
return read;
}
public static string ReadString(this MemoryStream ms)
{
var sb = new StringBuilder();
while (true)
{
int b = ms.ReadByte();
if (b == -1)
throw new FormatException("End of stream while reading string");
if (b == 0)
return sb.ToString();
sb.Append((char)b);
}
}
public static int ReadInt(this MemoryStream ms)
{
var bytes = new byte[4];
int read = ms.Read(bytes, 0, bytes.Length);
if (read != bytes.Length)
throw new FormatException("End of stream while reading int");
return BitConverter.ToInt32(bytes, 0);
}
public static byte[] ReadBytes(this MemoryStream ms, int count)
{
var bytes = new byte[count];
int read = ms.Read(bytes, 0, count);
if (read != count)
throw new FormatException("End of stream while reading bytes");
return bytes;
}
public static string GetOLEContent(this MemoryStream ms)
{
ms.ReadHeader();
string name = ms.ReadString();
string path = ms.ReadString();
int reserved = ms.ReadInt();
if (reserved != 0x30000)
throw new FormatException(string.Format("Unexpected reserved bytes : got {0} but expected {1}", reserved.ToString("x"), 0x30000.ToString("x")));
int tempLength = ms.ReadInt();
string tempPath = ms.ReadString();
if (tempPath.Length + 1 != tempLength)
throw new FormatException(string.Format("Mismatch between temp length {0} and temp full path length {1}", tempLength, tempPath.Length + 1));
int contentLength = ms.ReadInt();
byte[] content = ms.ReadBytes(contentLength);
int delta = sizeof(int) * 3 + (name.Length + path.Length + tempPath.Length) * 2;
if (ms.Length != ms.Position + delta)
throw new FormatException("Unexpected end of file");
return UTF8Encoding.UTF8.GetString(content);
}
}</pre>This code uses Excel but it might work with any Office document (Word, Powerpoint...). Of course, you should have installed the PIA. I have validated this code with xml and txt files. I use Excel 2007 SP3 MSO.<br/>
<br/><b>Edit :</b> You can refactor this code to extract the name and the bytes of each embedded object to be able to save the contents to files :<pre name="code" class="c-sharp">class OLEContent
{
#region Fields
private readonly string name;
private readonly byte[] content;
#endregion
public OLEContent(string name, byte[] content)
{
this.name = name;
this.content = content;
}
public string Name { get { return name; } }
public byte[] Content { get { return content; } }
}
...
public static OLEContent GetOLEContent(this MemoryStream ms)
{
...
return new OLEContent(name, content);
}
...
OLEContent content = ole.GetContent();
if (content != null)
File.WriteAllBytes(Path.Combine(tempPath, content.Name), content.Content);
...
</pre>This new version can also save images (like jpg) to disk.Unknownnoreply@blogger.com1tag:blogger.com,1999:blog-720201479425440668.post-73566437100044424122013-03-31T22:23:00.001+02:002022-03-05T17:31:27.604+01:00From Google Reader To Tiny Tiny RSSIn early 2000s, I migrated from FeedReader application to Google Reader. Now <a href="http://googleblog.blogspot.fr/2013/03/a-second-spring-of-cleaning.html">it's time to move on</a>, again.<br/>
I have chosen <a href="http://tt-rss.org/redmine/projects/tt-rss/wiki">Tiny Tiny RSS</a> because :<ul><li>It was in <a href="http://ask.slashdot.org/story/13/03/14/0617246/whats-the-best-rss-reader-not-named-google-reader">Slashdot comments</a></li><li>It has both a Web interface and an Android app</li><li>It is a very active project</li><li>I can host it myself (it's not in some cloud)</li><li>Articles will not be marked read after 30 days</li><li>I can disable article purge</li></ul>
<b>Hosting</b><br/>
Tiny Tiny RSS works fine with <a href="http://www.wampserver.com/">WampServer</a> but I do not allow connections from internet to my local home private network.<br/>
I could not use the following web hosting providers :<ul><li><a href="http://free.fr/">free.fr</a> : no support for PHP 5.3</li><li><a href="http://www.olympe.in/">olympe</a> : doc is dead, do not know how to upload files</li><li><a href="http://www.000webhost.com/">000webhost</a> : ftp is deadly slow, tt-rss does not work (uname, not writable errors)</li><li><a href="http://byethost.com/">byethost</a> : dojo not defined error, could not load feeds</li><li><a href="http://toile-libre.org">Toile Libre</a> : dead</li></ul>I have chosen <a href="http://www.hostinger.fr/">hostinger</a> :<ul><li>ttrss works ! (PHP 5.3.20 and you can enable PHP 5.4)</li><li>small .p.ht url suffix</li></ul>PHP has open_basedir restrictions but :<ul><li>you can use <a href="https://github.com/gothfox/Tiny-Tiny-RSS/commit/e2b0054be49b513a63b3870fcc65f45f30b5b338">this patch</a></li><li>You must use the 'resolved' url once all redirections have been resolved</li></ul>Sample feeds resolved by firefox :<ul><li><b>The Daily WTF</b> : http://thedailywtf.com/rss.aspx gives http://syndication.thedailywtf.com/TheDailyWtf</li><li><b>PC Inpact</b> : http://www.pcinpact.com/rss/news.xml gives http://pcinpact.com.feedsportal.com/c/35178/f/652880/index.rss</li></ul>Edit 2013.04.01 : hostinger lets you add cron jobs to update feeds.<br/>Edit 2013.04.11 : 10 days later, I got an official answer from hostinger support saying that cron jobs only support PHP 5.2. Too bad...Unknownnoreply@blogger.com3tag:blogger.com,1999:blog-720201479425440668.post-19066194225174890102013-01-26T15:03:00.001+01:002022-03-05T17:31:42.981+01:00InvalidCastException in AddInToken.ActivateIf you're playing with System.AddIn (also called MAF for <a href="http://msdn.microsoft.com/en-us/library/bb384200.aspx">Managed Addin Framework</a> not to be confused wief MEF which is <a href="http://msdn.microsoft.com/en-us/library/dd460648.aspx">Managed Extensibility Framework</a>), you might get an <b>InvalidCastException</b> when calling <b>Activate<T></b> method on some AddInToken instance : unable to cast transparent proxy to type ...<br/>
<br/>
First of all, try to rebuild your pipeline folder from scratch, check with AddInUtil.exe that there are no warning.<br/>
<br/>
If you still get the error, ensure that the program you are running has no dependency on any pipeline assembly. Your main project should not depend on the following assemblies : addin, addin adapter, addin view, contract. Otherwise, the token activation will get completely mixed up.<br/>
<br/>
HTHUnknownnoreply@blogger.com0tag:blogger.com,1999:blog-720201479425440668.post-34122645575025749282011-12-30T22:36:00.003+01:002022-03-05T17:32:47.892+01:00Clean Code<a href="http://www.amazon.fr/Clean-Code-Handbook-Software-Craftsmanship/dp/0132350882">Clean Code</a> (A Handbook of Agile Sortware Craftmanship) by Robert C. Martin is a must-read.
Here are <a href="https://docs.google.com/document/pub?id=1rTYaIn4Br4tgYPx1oo8pz2I2aHT1YehOaBRM7__mxH8">a few notes</a> about it (filtered).Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-720201479425440668.post-42916091099744383332011-11-18T22:40:00.004+01:002022-03-05T17:33:01.959+01:00Regasm : insufficient system resourcesGot this error at work : <blockquote>Regasm : error RA0000 : Insufficient system resources exist to complete the requested service</blockquote>I played a little with <a href="http://technet.microsoft.com/en-us/sysinternals/bb545021">procmon</a> (Thanks a lot <a href="http://en.wikipedia.org/wiki/Mark_Russinovich">Mark</a> !) I looked for "INSUFFICIENT RESOURCES" in the events. This event was due to a RegCreateKey in HKCR/Wow6432Node/CLSID. It turned out that it was not possible to create a subkey with regedit.
<a href="http://xkcd.com/979/">HTH</a>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-720201479425440668.post-29038609294230136792011-07-02T17:43:00.006+02:002022-03-05T17:33:14.245+01:00How To Really Reset Folder Settings in Windows 7Sometimes, Windows 7 automatically updates explorer's columns. For example, if a folder has a mp3 file, columns headers will be artist, song, etc.
This is really annoying for all other files of the same folder.
Configuration is stored in registry. Deleting and creating again such a folder will not reset its configuration. You have to delete keys in registry.
Here is the .reg file found on <a href="http://www.sevenforums.com/tutorials/15692-folder-view-settings-reset-all-default.html">sevenforums.com</a> :<pre name="code" class="c-sharp">Windows Registry Editor Version 5.00
[-HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\BagMRU]
[-HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Bags]
[-HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\Bags]
[-HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\BagMRU]
[-HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\BagMRU]
[-HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\Bags]
[-HKEY_CURRENT_USER\Software\Classes\Wow6432Node\Local Settings\Software\Microsoft\Windows\Shell\Bags]
[-HKEY_CURRENT_USER\Software\Classes\Wow6432Node\Local Settings\Software\Microsoft\Windows\Shell\BagMRU]</pre>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-720201479425440668.post-24421261742805147572011-05-27T21:04:00.004+02:002022-03-05T17:33:31.481+01:00Révolution... 6 mois plus tardReçu ce jour (6 mois et 12 jours après la demande effectuée le 15 décembre) :
<blockquote>Free Haut Débit
Bonjour,
Nous avons le plaisir de vous annoncer que votre nouvelle Freebox pour votre ligne ******** est en cours d'expédition au point relais KIALA.
[...].
Vous serez informé par email et SMS de l'arrivée de votre colis au point relais KIALA choisi.
Sincères salutations,
L'équipe Free</blockquote>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-720201479425440668.post-14793535255561440312011-03-12T21:09:00.023+01:002022-03-05T17:33:43.562+01:00Windows 7 sp1 [Solved]Windows update fails to install service Windows 7 sp1. After downloading the 900 MB of windows6.1-KB976932-X64.exe (I also downloaded Windows_Win7SP1.7601.17514.101119-1850.AMD64CHK.Symbols.msi and Windows_Win7SP1.7601.17514.101119-1850.AMD64FRE.Symbols.msi, almost 300 MB each but I am still not sure about the requirement of these two), I tried to update manually. But this failed again : "L'installation n'a pas réussi", "l'assembly n'a pas pu être trouvé". "Détails" do not give a lot more info : "Erreur : ERROR_SXS_ASSEMBLY_MISSING(0x80073701)". There is a link to get more info ("Se connecter pour en savoir plus sur ce problème"), but <a href="http://windows.microsoft.com/fr-FR/windows7/troubleshoot-problems-installing-service-pack">this does not help me solve this problem</a>.<br /><br />Found the same problem <a href="http://social.technet.microsoft.com/Forums/en-US/w7itproinstall/thread/f876c4e1-6696-48dd-851f-65203dfa9700">here</a> and <a href="http://social.technet.microsoft.com/Forums/en-US/w7itproinstall/thread/c81f1185-e8c0-4819-8546-73bd69c01d24/">here</a>.<br /><br />Looking deeper in C:\Windows\Logs\CBS\CBS.log (>250 MB) :<pre>2011-03-12 22:11:26, Info CBS Exec: Resolving Package: Package_43_for_KB976098~31bf3856ad364e35~amd64~~6.1.1.1, Update: 976098-91_neutral_LDR<br />2011-03-12 22:11:26, Info CBS Exec: Resolving Package: Package_43_for_KB976098~31bf3856ad364e35~amd64~~6.1.1.1, Update: 976098-91_neutral_LDR, PinDeployment: amd64_8c41fc7eb0dbe2daefc621237184c0e3_31bf3856ad364e35_6.1.7600.20561_none_e8d566dacff1f5ff<br />2011-03-12 22:11:26, Error CSI 0000000c@2011/3/12:21:11:26.177 (F) d:\w7rtm\base\wcp\componentstore\csd_locking.cpp(324): Error STATUS_SXS_ASSEMBLY_MISSING originated in function CCSDirectTransaction::LockComponent expression: (null)<br />[gle=0x80004005]<br />2011-03-12 22:11:37, Error CSI 0000000d (F) STATUS_SXS_ASSEMBLY_MISSING #1573632# from CCSDirectTransaction::OperateEnding at index 0 of 1 operations, disposition 2[gle=0xd015000c]<br />2011-03-12 22:11:37, Error CSI 0000000e (F) HRESULT_FROM_WIN32(ERROR_SXS_ASSEMBLY_MISSING) #1573517# from Windows::ServicingAPI::CCSITransaction::ICSITransaction_PinDeployment(Flags = 0, a = 8c41fc7eb0dbe2daefc621237184c0e3, Version = 6.1.7600.20561, pA = PROCESSOR_ARCHITECTURE_AMD64 (9), Culture neutral, VersionScope = 1 nonSxS, PublicKeyToken = {l:8 b:31bf3856ad364e35}, Type neutral, TypeName neutral, PublicKey neutral, cb = (null), s = (null), rid = [77]"Package_43_for_KB976098~31bf3856ad364e35~amd64~~6.1.1.1.976098-91_neutral_LDR", rah = [1]"2", manpath = (null), catpath = (null), ed = 0, disp = 0)[gle=0x80073701]<br />2011-03-12 22:11:38, Info CBS Failed to pin deployment while resolving Update: 976098-91_neutral_LDR from file: (null) [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING]<br />2011-03-12 22:11:38, Info CBS Failed to resolve item[0] in Package: Package_43_for_KB976098~31bf3856ad364e35~amd64~~6.1.1.1, Update: 976098-91_neutral_LDR [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING]<br />2011-03-12 22:11:38, Info CBS Failed to resolve execution update. [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING]<br />2011-03-12 22:11:38, Error CBS Failed to resolve execution package: Package_43_for_KB976098~31bf3856ad364e35~amd64~~6.1.1.1 [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING]<br />2011-03-12 22:11:38, Info CSI 0000000f@2011/3/12:21:11:38.370 CSI Transaction @0x34c280 destroyed</pre>I think the important part is <span style="font-weight:bold;">Package_43_for_KB976098~31bf3856ad364e35~amd64~~6.1.1.1</span>. So I tried to <a href="http://www.microsoft.com/download/en/confirmation.aspx?id=3965">download KB976098 for x64</a> and install it manually, but windows tells me it is already installed.<ul><li><span style="font-weight:bold;">sfc /scannow</span> found nothing.</li><li><a href="http://support.microsoft.com/kb/947821/en-us">System Update Readiness Tool</a> (KB947821 [v14]) does not help either (cannot install).</li></ul>I eventually managed to install SP1 thanks to <a href="http://www.sevenforums.com/windows-updates-activation/163526-win7-sp1-upgrade-error_sxs_assembly_missing-0x80073701.html">Kris post</a> : I had to remove 4 KB : KB976098, KB979306, KB981793 and KB979916. Problem solved !Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-720201479425440668.post-63848788889214944112011-02-20T19:37:00.008+01:002022-03-05T17:35:31.195+01:00Argotic Syndication Framework DesillusionWhen I discovered <a href="http://argotic.codeplex.com/">Argotic Syndication Framework</a> a few hours ago, I thought : One to rule them all. They say on their web site that I don't have to speak the syndication langage.
But, I failed to make it work on the first syndication feeds I tried :
<a href="http://www.google.fr/search?hl=fr&source=hp&q=site%3Ablog.free.fr&aq=f">blog.free.fr</a> atom feeds generated with <a href="http://dotclear.org/">dotclear</a> raise the following exception :<pre name="code" class="csharp"> at Argotic.Common.Guard.ArgumentNotNullOrEmptyString(String value, String name)
at Argotic.Syndication.AtomPersonConstruct.set_Name(String value)
at Argotic.Syndication.AtomPersonConstruct.Load(XPathNavigator source)
at Argotic.Syndication.AtomPersonConstruct.Load(XPathNavigator source, SyndicationResourceLoadSettings settings)
at Argotic.Data.Adapters.Atom10SyndicationResourceAdapter.FillFeedCollections(AtomFeed feed, XPathNavigator source, XmlNamespaceManager manager, SyndicationResourceLoadSettings settings)
at Argotic.Data.Adapters.Atom10SyndicationResourceAdapter.Fill(AtomFeed resource)
at Argotic.Data.Adapters.SyndicationResourceAdapter.FillAtomResource(ISyndicationResource resource, SyndicationResourceMetadata resourceMetadata)
at Argotic.Data.Adapters.SyndicationResourceAdapter.Fill(ISyndicationResource resource, SyndicationContentFormat format)
at Argotic.Syndication.AtomFeed.Load(XPathNavigator navigator, SyndicationResourceLoadSettings settings, SyndicationResourceLoadedEventArgs eventData)
at Argotic.Syndication.AtomFeed.Load(Uri source, ICredentials credentials, IWebProxy proxy, SyndicationResourceLoadSettings settings)
at Argotic.Syndication.AtomFeed.Create(Uri source, ICredentials credentials, IWebProxy proxy, SyndicationResourceLoadSettings settings)
at Argotic.Syndication.AtomFeed.Create(Uri source, SyndicationResourceLoadSettings settings)
at Argotic.Syndication.AtomFeed.Create(Uri source)</pre>It fails to parse publication dates in <a href="http://www.universfreebox.com/backend.php?id_rubrique=1">Univers Freebox syndication feeds</a> or <a href="http://rss.slashdot.org/Slashdot/slashdot">Slashdot feeds</a>.
Well, it seems I have to learn this langage anyway...
Edit : After failing again on slashdot feeds with .NET 3.5 classes, I found Peter's blog. Actually my code was getting closer to <a href="http://www.eggheadcafe.com/tutorials/aspnet/9faa101f-0a1a-465f-a41a-3e52dd9f7526/everything-rss--atom-f.aspx">his solution</a>.Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-720201479425440668.post-43846418380871990582011-02-01T22:06:00.006+01:002022-03-05T17:35:58.223+01:00Merci à la TVA !Les opérateurs profitent de la hausse de la TVA pour augmenter les tarifs des téléphones. Il y a deux semaines, on pouvait avoir un forfait Bouygues Telecom Evasio 1h+1h à 34 € (engagement d'un an), avec un HTC Desire pour :<ul><li>phoneandphone : 1 € - <a href="http://www8.phoneandphone.com/telephonie/mobile-avec-abonnement/Htc/Desire/1-50010-99-telephone-Htc-Desire-avec-abo-.html">Aujourd'hui : 169 €</a></li><li>BT : 59 € - Aujourd'hui : 180 €</li></ul>Voleurs !
Mais bon, il suffit de se détendre ! 51 € en blanc :^( chez Virgin Mobile avec le code promo <span style="font-weight:bold;">DESIRE</span> et le forfait E-Devine à 31 €.Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-720201479425440668.post-51168201675941150512011-01-30T10:24:00.019+01:002022-03-05T17:36:13.486+01:00Recover Acer Aspire 1650Useful keys :<ul><li>F2 : Enter BIOS Setup</li><li>F12 : Choose boot device (if F12 key
enabled in BIOS)</li></ul>Notes :<ul><li>You definitely need a backup DVD where Acer eRecovery has burnt the content of the hidden partition. Unfortunately, this DVD might not include everything (like Acer eRecovery for example - as if this restore process should be a one-time thing).</li></ul>Steps :<ul><li>Boot on backup DVD and wait for restore process to end. This will ovewrite the first partition with the content of the DVD big file. It takes about 12 min.
Then the laptop reboots on the DVD to finish copying files.
It seems that the real copy happens at 40 % (see HD activity). If I kept some linux partitions, it would froze at 40 % doing nothing (HD led off)</li></ul>Then, if you reboot, Windows would use the following partitions :<ul><li>C: : old hidden partition (hda1)</li><li>D: : old C: (hda2)</li><li>E: : old D: (hda3 or hda5)</li></ul>IMHO, having two C:-like partitions is really messy.
That's why I want to hide the first partition again. This can be done in a few steps :<ul><li>Hide the first partition</li><li>Copy the first partition (hda1) to the second (hda2) </li><li>Eventually reboot</li></ul>Linux comes to the rescue. I use the <a href="http://www.gentoo.org/main/en/where.xml">Gentoo Minimal Install dvd</a> (iso) for <a href="http://mirrors.kernel.org/gentoo/releases/x86/autobuilds/current-iso/">x86</a>. So the detailed steps are :<ul><li>Burn Gentoo minimal dvd</li><li>Reboot on this dvd (F2 or F12 can help)</li><li>Hide hda1 : (this commands sets hda1 type to Compaq Diagnostics, disables boot on hda1, enables boot for hda2 and save)</li></ul><pre name="code" class="c-sharp">fdisk /dev/hda
t 1 12
a 1
a 2
w</pre><ul><li>Mount hda1 and hda2 :</li></ul><pre name="code" class="c-sharp">mkdir /mnt/win/c
mkdir /mnt/win/d
mount /dev/hda1 /mnt/win/c
mount /dev/hda2 /mnt/win/d</pre><ul><li>Optional : save hda2 content :</li></ul><pre name="code" class="c-sharp">mkdir /mnt/win/d/old
mv /mnt/win/d/* /mnt/win/d/old</pre><ul><li>Copy hda1 to hda2 :</li></ul><pre name="code" class="c-sharp">cp -a /mnt/win/c/* /mnt/win/d</pre><ul><li>Reboot to windows</li></ul><pre name="code" class="c-sharp">reboot</pre>Then your fresh new WindowsXP will start using second partition.
Acer sucks, try <a href="http://www.prix-portables.fr/filtres/criteres/48ac99447afe6255be71a15729452fa5.html">Asus</a>.
Edit : <ul><li>Radeon X300 does not work after reboot. ATI driver fails to install.</li><li>Intel 2200BG wifi card does not work either.</li><li>Keyboard is not recognized and locks the Touchpad.</li><li>Startup desktop.ini file is opened automaticaly when XP starts ? Might be because the linux copy did not take into account the hidden attribute...</li></ul>Edit : Merging the two first partitions to get 30 GB on C:\ fixes them all. No more post-install copy step. No more problem with ATI driver, etc.Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-720201479425440668.post-69293389940113836292010-11-08T22:31:00.011+01:002022-03-05T17:36:29.056+01:00TechEd 2010<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhv7MyaMM0Ngk9mF9StYdFOJu2IQpFB-3aMJ5FPGdMKo8jZXG2jWBroSD43jtD4_rkQHkHmP-67NU3y4PaJ0AJwnjBcHvmx2DlMysI40jZ_Mg6Vm8GikX7gbmLFV2ww96WG2HjPbe2X0CM/s1600/teched2010a.jpg"><img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 128px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhv7MyaMM0Ngk9mF9StYdFOJu2IQpFB-3aMJ5FPGdMKo8jZXG2jWBroSD43jtD4_rkQHkHmP-67NU3y4PaJ0AJwnjBcHvmx2DlMysI40jZ_Mg6Vm8GikX7gbmLFV2ww96WG2HjPbe2X0CM/s200/teched2010a.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5537299523966680450" /></a>
I am currently in Berlin for Microsoft TechEd 2010. It is a first-time Tech Ed and a first time in Berlin. Unfortunately I fear I will not have time to discover the city as there is a lot to do at the conference.
I attended the Silverlight pre-conference as Visual Studio's was dedicated to beginners. Funny thing : they use a lot of penguin images in their example.
The infrastructure in place is quite impressive. Lots of machines everywhere, with wireless network, that's great !
The keynote was a lot about aaS (as a service) stuff : infra/platform/app as a service, with clouds everywhere. Well even the newest private cloud seems quite far away for day to day real life problems.
<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1NoH5gRXRRBpbVuZ8g43u98CAnc-Ff07-WvwEQqEynpveCoOlzuYEPz_AVkLBUpuF080GR14Y3HjriBVm8LXa1f3-JCA8OfK6tBTPxtu_jzHoHyHBHI62LlnVGBA7JDuIIgj98XSgQgk/s1600/teched2010b.jpg"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 68px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1NoH5gRXRRBpbVuZ8g43u98CAnc-Ff07-WvwEQqEynpveCoOlzuYEPz_AVkLBUpuF080GR14Y3HjriBVm8LXa1f3-JCA8OfK6tBTPxtu_jzHoHyHBHI62LlnVGBA7JDuIIgj98XSgQgk/s400/teched2010b.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5537299675245022082" /></a>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-720201479425440668.post-8126875603643526502010-10-27T23:20:00.004+02:002022-03-05T17:36:44.012+01:00New UE46B8000 firmwareSamsung has just issued a new firmware for the UE46B8000 models. This is version 3002. If you still have version 3000, you must upgrade to version 3001 first.
Changes :<ul><li>DLNA browsing speed has been greatly improved.</li></ul>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-720201479425440668.post-58535399693959771432010-08-19T23:06:00.003+02:002022-03-05T17:36:56.954+01:00Windows 7 Elevated Startup ShortcutsShortcuts in Windows 7 Startup folder configured with elevation (administrative privileges) will not be launched.
You need to create a scheduled task with administrative (maximum) rights configured to start when you open a session.Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-720201479425440668.post-71284741283949468292010-08-14T15:25:00.007+02:002022-03-05T17:37:11.237+01:00Asus U30JC-QX010X : Asus WebStorageAsus WebStorage suddenly stopped asking for a login/password. I mistakenly clicked on the icon below Computer and it just asked for EULA agreement. Then I've been able to use the dedicated 1000 GB storage for my backups. Asus support told me a couple of months ago that U30JC-QX010X had no WebStorage offer included.
But :<ul><li>This is just a 2 months trial.</li><li>Asus WebStorage pollutes all synchronized folders with .awo directories.</li><li>You cannot disable default folders (Favorites, Documents and some BackupDemo folder on the desktop).</li></ul>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-720201479425440668.post-85528498145500634452010-07-29T15:00:00.005+02:002022-03-05T17:37:25.018+01:00Setup Gentoo on Asus U30JC-QX010X : Part 4 - WebcamIn order to use the asus U30JC-QX010X webcam on Gentoo, I needed to enable a few options in the kernel (2.6.34-r2) :<pre name="code" class="CSharp">CONFIG_MEDIA_SUPPORT=y
CONFIG_VIDEO_DEV=m
CONFIG_VIDEO_V4L2_COMMON=m
CONFIG_VIDEO_ALLOW_V4L1=y
CONFIG_VIDEO_V4L1_COMPAT=y
CONFIG_VIDEO_MEDIA=m
CONFIG_IR_CORE=y
CONFIG_VIDEO_IR=y
CONFIG_MEDIA_TUNER=m
CONFIG_MEDIA_TUNER_CUSTOMISE=y
CONFIG_VIDEO_V4L2=m
CONFIG_VIDEO_V4L1=m
CONFIG_VIDEO_CAPTURE_DRIVERS=y
CONFIG_VIDEO_HELPER_CHIPS_AUTO=y
CONFIG_VIDEO_IR_I2C=m
CONFIG_V4L_USB_DRIVERS=y
CONFIG_USB_VIDEO_CLASS=m
CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y
CONFIG_SND_RAWMIDI=m
CONFIG_SND_RAWMIDI_SEQ=m
CONFIG_SND_USB=y
CONFIG_SND_USB_AUDIO=m</pre>Added use flags :<pre name="code" class="CSharp">media-tv/xawtv X alsa opengl
media-video/mplayer v4l v4l2</pre>I only needed to emerge xawtv and mplayer. usbutils was already installed by hal.
Then, you can test your webcam :<pre name="code" class="CSharp">mplayer tv://</pre>Reference : <a href="http://en.gentoo-wiki.com/wiki/Webcam">Webcam - Gentoo Linux Wiki</a>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-720201479425440668.post-24303422746448067902010-07-28T19:17:00.004+02:002022-03-05T17:37:38.765+01:00Filed my first Gentoo bug todayWhile struggling again with linux nvidia driver to use my <a href="http://d3dal3.blogspot.com/2010/06/setup-gentoo-on-asus-u30jc-qx010x-part.html">Geforce 310m under Gentoo</a>, I found a bug in eselect-opengl package. The patch is available in <a href="http://bugs.gentoo.org/show_bug.cgi?id=330249">bugzilla</a>.Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-720201479425440668.post-58392436617791400802010-07-24T20:53:00.052+02:002022-03-05T17:37:55.302+01:00Unable to add new components in Windows 7 [Solved]I wanted to add IIS on my asus laptop with Windows 7 Pro x64 but it keeps failing miserably. I cannot add any new component. It fails with the error :<ul><li>French : <span style="font-weight:bold;">Une erreur s'est produite. Certaines fonctionnalités n'ont pas été modifiées correctement.</span></li><li>English : <span style="font-weight:bold;">An error has occurred. Not all of the features were successfully changed.</span></li></ul>It is not linked to my tuning of windows 7 professionnal as I have enabled back again <a href="http://d3dal3.blogspot.com/2010/05/asus-u30jc-qx010x-tuning-windows-7-part_30.html">services</a>, <a href="http://d3dal3.blogspot.com/2010/06/asus-u30jc-qx010x-tuning-windows-7-part.html">tasks</a>, <a href="http://d3dal3.blogspot.com/2010/06/asus-u30jc-qx010x-tuning-windows-7-part_06.html">auto run</a> registry keys and startup shortcuts.
I have also enabled again system restore for both C and D drives. Strangely, I had to temporarily rename the C drive to its original name (OS) to avoid strange errors when validating the new configuration.
I found on the net that the following command line could help :<pre name="code" class="CSharp">fsutil resource setautoreset true C:\</pre>But it hasn't fixed my problem.
Each attempt adds five <span style="font-weight:bold;">Windows Error Reporting</span> events in the <span style="font-weight:bold;">Application</span> events log like :<pre name="code" class="CSharp">Récipient d’erreurs 660181886, type 5
Nom d’événement : CbsPackageServicingFailure2
Réponse : Non disponible
ID de CAB : 0
Signature du problème :
P1 : 6.1.7600.16385
P2 : Microsoft-Windows-Foundation-Package
P3 : 6.1.7600.16385
P4 : amd64
P5 : unknown
P6 : 80073701
P7 : Resolve
P8 : Installed
P9 : Installed
P10 : Windows Optional Component Manager
Fichiers joints :
C:\Windows\Logs\CBS\CbsPersist_20100719145300.cab
C:\Windows\Logs\CBS\CbsPersist_20100720135637.cab
C:\Windows\Logs\CBS\CbsPersist_20100724175736.cab
C:\Windows\Logs\CBS\CbsPersist_20100724190432.cab
C:\Windows\Logs\CBS\CbsPersist_20100724202127.cab
C:\Windows\Logs\CBS\CBS.log
C:\Windows\servicing\Sessions\Sessions.xml
C:\Windows\winsxs\poqexec.log
C:\Windows\inf\setupapi.dev.log
Ces fichiers sont peut-être disponibles ici :
C:\ProgramData\Microsoft\Windows\WER\ReportArchive\Critical_6.1.7600.16385_12b152e0507da7dbac253e5d6773b3d790739076_02e58056
Symbole d’analyse :
Nouvelle recherche de la solution : 0
ID de rapport : 48d9af65-9764-11df-89ff-9b9906ca6306
Statut du rapport : 0</pre>or<pre name="code" class="CSharp">Récipient d’erreurs 1105700561, type 5
Nom d’événement : WindowsWcpOtherFailure3
Réponse : Non disponible
ID de CAB : 0
Signature du problème :
P1 : 6.1.7600
P2 : base\wcp\componentstore\csd_locking.cpp
P3 : CCSDirectTransaction::LockComponent
P4 : 321
P5 : c015000c
P6 : 0x05f3852f
P7 :
P8 :
P9 :
P10 :
Fichiers joints :
C:\Windows\Logs\CBS\CbsPersist_20100719145300.cab
C:\Windows\Logs\CBS\CbsPersist_20100720135637.cab
C:\Windows\Logs\CBS\CbsPersist_20100724175736.cab
C:\Windows\Logs\CBS\CbsPersist_20100724190432.cab
C:\Windows\Logs\CBS\CbsPersist_20100724202127.cab
C:\Windows\Logs\CBS\CBS.log
C:\Windows\servicing\Sessions\Sessions.xml
C:\Windows\winsxs\poqexec.log
C:\Windows\System32\LogFiles\Scm\SCM.EVM
C:\Windows\Logs\CBS\FilterList.log
C:\Windows\Temp\WER6622.tmp.hdmp
C:\Windows\Temp\WER66ED.tmp.mdmp
Ces fichiers sont peut-être disponibles ici :
C:\ProgramData\Microsoft\Windows\WER\ReportArchive\Critical_6.1.7600_61fd7aaf67694893e820b3fd1752ddf4faf4e84_06197a3e
Symbole d’analyse :
Nouvelle recherche de la solution : 0
ID de rapport : 48d9af64-9764-11df-89ff-9b9906ca6306
Statut du rapport : 0</pre>Extract from C:\Windows\Logs\CBS\CBS.log (with telnet client component) :<pre name="code" class="CSharp">Info CBS Perf: Resolve chain started.
Info CSI 0000000b@2010/7/24:20:44:42.885 CSI Transaction @0x69300e0 initialized for deployment engine {d16d444c-56d8-11d5-882d-0080c847b195} with flags 00000002 and client id [101]"TI1.30092144_4010074112:2/Microsoft-Windows-Foundation-Package~31bf3856ad364e35~amd64~~6.1.7600.16385"
Info CBS Exec: Resolving Package: Microsoft-Windows-Telnet-Client-Package~31bf3856ad364e35~amd64~de-DE~6.1.7600.16385, Update: TelnetClient
Info CBS Exec: Resolving component from existing package; passing NULL manifest path to PinDeployment and hoping things haven't been scavenged.
Info CBS Exec: Resolving Package: Microsoft-Windows-Telnet-Client-Package~31bf3856ad364e35~amd64~de-DE~6.1.7600.16385, Update: TelnetClient, PinDeployment: amd64_microsoft-windows-t..oyment-languagepack_31bf3856ad364e35_6.1.7600.16385_de-de_c3c58e4b573d9172
Error CSI 0000000c@2010/7/24:20:44:42.913 (F) d:\w7rtm\base\wcp\componentstore\csd_locking.cpp(321): Error STATUS_SXS_ASSEMBLY_MISSING originated in function CCSDirectTransaction::LockComponent expression: (null) [gle=0x80004005]
Error CSI 0000000d (F) STATUS_SXS_ASSEMBLY_MISSING #238072# from CCSDirectTransaction::OperateEnding at index 0 of 1 operations, disposition 2[gle=0xd015000c]
Error CSI 0000000e (F) HRESULT_FROM_WIN32(ERROR_SXS_ASSEMBLY_MISSING) #237957# from Windows::ServicingAPI::CCSITransaction::ICSITransaction_PinDeployment(Flags = 0, a = Microsoft-Windows-Telnet-Client-Deployment-LanguagePack, Version = 6.1.7600.16385, pA = PROCESSOR_ARCHITECTURE_AMD64 (9), Culture = [l:10{5}]"de-DE", VersionScope = 1 nonSxS, PublicKeyToken = {l:8 b:31bf3856ad364e35}, Type neutral, TypeName neutral, PublicKey neutral, cb = (null), s = (null), rid = [96]"Microsoft-Windows-Telnet-Client-Package~31bf3856ad364e35~amd64~de-DE~6.1.7600.16385.TelnetClient", rah = (null), manpath = (null), catpath = (null), ed = 0, disp = 0)[gle=0x80073701]
Info CBS Failed to pin deployment while resolving Update: TelnetClient from file: (null) [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING]
Info CBS Failed to resolve item[0] in Package: Microsoft-Windows-Telnet-Client-Package~31bf3856ad364e35~amd64~de-DE~6.1.7600.16385, Update: TelnetClient [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING]
Info CBS Failed to resolve execution update. [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING]
Error CBS Failed to resolve execution package: Microsoft-Windows-Telnet-Client-Package~31bf3856ad364e35~amd64~de-DE~6.1.7600.16385 [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING]
Info CSI 0000000f@2010/7/24:20:44:45.042 CSI Transaction @0x69300e0 destroyed
Info CBS Perf: Resolve chain complete.
Info CBS Failed to resolve execution chain. [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING]
Error CBS Failed to process single phase execution. [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING]
Info CBS WER: Generating failure report for package: Microsoft-Windows-Foundation-Package~31bf3856ad364e35~amd64~~6.1.7600.16385, status: 0x80073701, failure source: Resolve, start state: Installed, target state: Installed, client id: Windows Optional Component Manager
Info CBS Failed to query DisableWerReporting flag. Assuming not set... [HRESULT = 0x80070002 - ERROR_FILE_NOT_FOUND]
Info CBS Failed to add %windir%\winsxs\pending.xml to WER report because it is missing. Continuing without it...
Info CBS Failed to add %windir%\winsxs\pending.xml.bad to WER report because it is missing. Continuing without it...
Info CBS Reboot mark refs: 0
Info CBS Enabling LKG boot option
Info CBS Exec: End: nested restore point - complete.
Info CBS Restored system sleep block state: 0x80000000
Info CBS Client aborted the install. [HRESULT = 0x800f0821 - CBS_E_ABORT]
Info CBS Exec: Processing complete. Session: 30092144_4010074112, Package: Microsoft-Windows-Foundation-Package~31bf3856ad364e35~amd64~~6.1.7600.16385 [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING]
Error CBS Failed to perform operation. [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING]
Info CBS Session: 30092144_4010074112 finalized. Reboot required: no [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING]</pre>A few notes :<ul><li>STATUS_SXS_ASSEMBLY_MISSING : Culture is wrong ! Why the hell is it looking for German (de-DE) packages on my French laptop ?</li><li>The log tells <span style="font-weight:bold;">Reboot required: no</span> but it asks for reboot anyway (even if nothing is installed!)</li></ul>I have downloaded <a href="http://support.microsoft.com/kb/947821">System Update Readiness Tool</a> (100 MB) even if the ERROR_SXS_ASSEMBLY_MISSING error might not be fixed by this tool (not listed in the error table). After 25 min execution, no error were detected in C:\Windows\Logs\CBS\CheckSUR.log.
Sytem File Checker tool (<span style="font-weight:bold;">sfc /verifyonly</span>) found nothing (aucune violation d'intégrité).
Google search :<ul><li><a href="http://www.google.fr/#hl=fr&q=An+error+has+occurred.+Not+all+of+the+features+were+successfully+changed.+&aq=f&aqi=&aql=&oq=&gs_rfai=&fp=bf3adda36ef506cc">An error has occurred. Not all of the features were successfully changed.</a> : 8.000.000 results</li><li><a href="http://www.google.fr/#hl=fr&q=An+error+has+occurred.+Not+all+of+the+features+were+successfully+changed.+site%3Amicrosoft.com&aq=f&aqi=&aql=&oq=&gs_rfai=&fp=bf3adda36ef506cc">on microsoft.com only</a> : 3.200 results</li><li><a href="http://www.google.fr/#hl=fr&q=An+error+has+occurred.+Not+all+of+the+features+were+successfully+changed.+site%3Amicrosoft.com+CbsPackageServicingFailure2&aq=f&aqi=&aql=&oq=&gs_rfai=&fp=bf3adda36ef506cc">with CbsPackageServicingFailure2 event only on microsoft.com</a> : 2 results</li><li><a href="http://www.google.fr/#hl=fr&q=An+error+has+occurred.+Not+all+of+the+features+were+successfully+changed.+site%3Amicrosoft.com+WindowsWcpOtherFailure3&aq=&aqi=&aql=&oq=An+error+has+occurred.+Not+all+of+the+features+were+successfully+changed.+site%3Amicrosoft.com+WindowsWcpOtherFailure3&gs_rfai=&fp=bf3adda36ef506cc">with WindowsWcpOtherFailure3 event only on microsoft.com</a> : 1 result</li><li><a href="http://www.google.fr/#hl=fr&q=An+error+has+occurred.+Not+all+of+the+features+were+successfully+changed.+WindowsWcpOtherFailure3&aq=f&aqi=&aql=&oq=&gs_rfai=&fp=bf3adda36ef506cc">with WindowsWcpOtherFailure3 event</a> : 20 results (including this blog)</li></ul>Running the package manager by hand is a bit more explicit (I use the same name as in my French graphical user interface):<pre name="code" class="CSharp">pkgmgr /iu:"Client Telnet"</pre>Gestionnaire de package Windows
Echec de l'opération avec 0x80073701
L'assembly référencé n'a pas pu être trouvé.
Well this is the ERROR_SXS_ASSEMBLY_MISSING error found earlier in Component Based Servicing log (CBS.log).
After some research with Process Monitor, it seems that TrustedInstaller.exe fails to open the registry key HKLM\COMPONENTS\DerivedData\Components\amd64_microsoft-windows-s..oyment-languagepack_31bf3856ad364e35_6.1.7600.16385_de-de_08eb0375be2e567f. I can confirm this with regedit : the de_de key is missing, I only got these versions : el-gr, en-us, es-es, fr-fr, he-il, it-it, nl-nl, pt-pt and zh-tw.
Note: HKLM\COMPONENTS might be missing on Windows 7. In this case, it would be generated completely if you launch Windows package manager UI.
These keys matches files under C:\Windows\winsxs. I cannot find the de-de files in this folder. This is what <a href="http://social.technet.microsoft.com/Forums/en-US/w7itproinstall/thread/8aee040a-213b-4dac-8fb1-b0d1acb73b62">Andre Ziegler told me in the forums</a>. He also confirmed that I need to reinstall Windows 7 (again :( ).
If I look into C:\Windows\System32\catroot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE}, I can find all language files, and the German file in particular (like Microsoft-Windows-Shell-InboxGames-Package~31bf3856ad364e35~amd64~de-DE~6.1.7600.16385).
As adviced in <a href="http://www.out-web.net/?p=623">Win7 Inside Out - WinSxS</a>, I have launched language packs setup application <span style="font-weight:bold;">lpksetup</span> but German pack is not installed (as expected : manifests are missing).
Note: WinSxS = <a href="http://en.wikipedia.org/wiki/Side-by-side_assembly">Windows Side by Side assemblies</a>.
Thanks to <a href="http://www.mydigitallife.info/2009/08/29/download-windows-7-mui-language-packs-official-32-bit-and-64-bit-direct-download-links/">mydigitallife</a>, I have downloaded German MUI pack : <a href="http://download.windowsupdate.com/msdownload/update/software/updt/2009/08/windows6.1-kb972813-x64-de-de_399ac15b2d55fd5dea0770d98825d7e75f4ad533.exe">windows6.1-kb972813-x64-de-de_399ac15b2d55fd5dea0770d98825d7e75f4ad533.exe</a>. To install this pack :<ul><li>Run pack exe to extract lp.cab file</li><li>Download <a href="http://www.froggie.sk/download.html">vistalizator</a></li><li>Choose add language</li><li>Select lp.cab file</li><li>Validate language installation</li><li>Make German the new display language : no !</li></ul>It is now possible to add new features. Victory !Unknownnoreply@blogger.com4