|
UPDATED: ConfigureCaptureMachine - Preparing An Application Capture Reference Machine |
|
|
|
CSI Toolkit
|
|
Written by Darwin Sanoy
|
|
Thursday, July 29, 2010 10:02am |
|
Appendix A of Microsoft's App-V 4.5 Sequencing Guide has 12 pages of screenshots that comprise two of their three best practice configuration steps for a sequencing machine. These steps are good for any type application capture - whether you are doing traditional application packaging or virtualization with any product. We've scripted those steps for you.
|
|
Free Replacement for Microsoft SteadyState on Windows 7 – It’s like VMware Snapshots for Real Machines! |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Wednesday, July 28, 2010 12:00am |
|
At first Microsoft was planning a new “Guest Mode” in Windows 7 to replace the functionality of the SteadyState toolkit. That feature was dropped from the final product, so if you’ve been using and loving SteadyState on Windows XP, you’re left a little high and dry. There is a free product that is a kind of fusion of SteadyState, System Restore, Backup and VMware virtual disk snapshots (but for real machines)…
|
|
Script To Extract All MSI Errors From a Windows Installer Log |
|
|
|
CSI Toolkit
|
|
Written by Darwin Sanoy
|
|
Thursday, July 22, 2010 12:00am |
|
Are you tired of plowing through Windows Installer logs looking for the same old evidence of the same old problems? CSI_GetMSIErrors allows you to build scripts to do that boring stuff! You can even design automated handling of these errors once you are able to grab them with this hand routine.
|
|
App-V Deployment MSI Fixups: Proper Rollback on Failure and Installing to Stand-Alone Clients From Network |
|
|
|
CSI Toolkit
|
|
Written by Darwin Sanoy
|
|
Wednesday, July 14, 2010 12:00am |
|
If you are running the App-V client in a stand alone mode, you have probably run into some frustrating situations trying to get the MSI to install properly. Worse yet, when the MSI package fails, it does not completely rollback the package addition to the client – so you end up with a half-baked deployment. Let's take a look at the details and then give you some files and transforms that do all the work for you.
|
|
Dedicated Online Courses - Onsite Training Upgraded! |
|
|
|
Training Updates and Additions
|
|
Written by Darwin Sanoy
|
|
Friday, July 9, 2010 12:44pm |
|
This is the "online version" of an onsite course. However, it has some very interesting benefits over a traditional onsite delivery.
|
|
Our Training Is Now Backed by the "007 Guarantee" |
|
|
|
Training Updates and Additions
|
|
Written by Darwin Sanoy
|
|
Wednesday, June 30, 2010 7:59am |
|
When you step out to take technology training you typically have concerns about being able to truly leverage the knowledge and skills you gain.
Our 007 Guarantee addresses these concerns by making sure you can apply your new skills and knowledge to real problems in your production environment.
|
|
CSI_ForceUNCRef: Elevating a Script When It Is Running From a Drive Letter |
|
|
|
CSI Toolkit
|
|
Written by Darwin Sanoy
|
|
Wednesday, June 16, 2010 4:40pm |
|
Windows 7 does not preserve drive letter mappings when a Protected Admin elevates to their full admin token. This can be a pain when triggering elevation from a script that has started from a network mapped drive letter. Here is a simple VBScript function to get around this problem.
|
|
Fetch Windows, Fetch – Find out what Windows is prefetching. |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Monday, June 14, 2010 2:00am |
|
Ever wonder exactly what Windows prefetch is pre-loading with your request to load an application? Now you can use this handy utility to find out.
|
|
Application Compatibility Toolkit 5.6 Download Available |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Wednesday, June 9, 2010 2:55pm |
|
AppCompat Toolkit 5.5 has been upgraded to 5.6 and now supports 64bit, includes community voting improvements and web service performance improvements.
|
|
Enable Your .NET Application or PowerShell Script to Write to the Process Monitor (procmon.exe) Log |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Tuesday, June 8, 2010 1:25pm |
|
Some smart folks at wintellect have collaborated with Mark Russinovich to give you a .NET Assembly that will let your application write to the Process Monitor log!
|
|
Scripting Around Session 0 Isolation |
|
|
|
CSI Toolkit
|
|
Written by Darwin Sanoy
|
|
Thursday, May 27, 2010 7:42am |
|
Millions of administrators worldwide depend on the ability of a Windows Service to display a message on the user desktop for coordination of software distribution activities. Generally this involves communications such as allowing the user to defer software distribution jobs, notification that a distribution job is underway in the background or informing that a software installation is complete. The new security feature in Windows 7 known as “Session 0 Isolation” now blocks this communication from occurring. This CSI-Windows.com Toolkit addition presents a reasonable secure, simple method for getting around the Session 0 barrier.
|
|
Booting Hyper-V and VMWare on the Same Headless Machine |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Thursday, May 6, 2010 3:34am |
|
This week I built a virtualization server on the cheap. I wanted to be able to test with both Hyper-V and VMware workstation on the same configuration. However, once you add the Hyper-V server role, the parent partition becomes virtualized as well. VMWare Workstation detects this situation and simply shows an abort message.
|
|
UPDATED: Hidden Gem: Installing Windows 7 / Server 2008 R2 From a Bootable USB Flash Drive |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Monday, May 3, 2010 2:00am |
|
After having difficulty with a DVD drive on one of my laptops, I did some snooping around to find out if I could install Windows from a thumb drive. The first utility I found did not work but then the perfect solution came from the most unusual place and it works with Server 2008 R2 as well!
|
|
Free Use of ChangeBase For Companies with 250 or Fewer Seats |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Wednesday, April 28, 2010 4:04pm |
|
ChangeBase announced a limited time offer for free use of ChangeBaseAOK for small businesses that have 250 or fewer seats. The offer is good through July 2010. It is a web based service available at...
|
|
VBScript UAC Prompting Kit |
|
|
|
CSI Toolkit
|
|
Written by Darwin Sanoy
|
|
Wednesday, April 21, 2010 1:31pm |
|
The VBScriptUACkit consists of a group of VBScript procedures that allow a script to check whether it is running with full admin rights and to relaunch elevated if needed.
It is able to check whether a user is a protected admin (unelevated admin) so that it can prompt only if admin permissions can be given. This allows a better user experience and it allows proper status reporting, rather than script failures.
|
|
Application Compatibility Training is Live! |
|
|
|
Training Updates and Additions
|
|
Written by Darwin Sanoy
|
|
Tuesday, April 20, 2010 7:41pm |
|
Our application compatiblity toolkit training is scheduled for July 12th!
This course focuses on Compatibility Administrator for shimming applications - it does not cover the inventory tools in the Application Compatibility Toolkit.
Check out the schedule and course description.
|
|
Windows Update - Large AppCompat Update KB976264 |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Thursday, April 8, 2010 1:36pm |
|
Microsoft has released a Windows Update that contains a large number of fixes for Windows Vista, Windows 7 and Windows Server. This is the second release of this package, so if you previously applied it, you may need to apply it again.
|
|
CSI_IsSession: VBScript Function to Discover Almost Anything About Your Current Login Session |
|
|
|
CSI Toolkit
|
|
Written by Darwin Sanoy
|
|
Monday, April 5, 2010 2:00am |
|
Last year I wrote the VBScript Function “IfUserPerms” to enable scripts to determine if the current user/session was a protected administrator (an administrator capable of elevating, but who is currently not elevated). It worked reasonably well, but had a few warts that needed clipping for its re-release with the upcoming CSI-Windows.com VBScript UAC Kit…
|
|
Unnecessary Roadblocks in the Windows Software Logo Program |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Wednesday, March 31, 2010 1:51pm |
|
Microsoft is running a survey about the Windows Software Logo Program to find out how it can be improved. For Windows 7 the program was streamlined for developers to make it easier for them to get on board. There is, however, one area that remains challenging for smaller development shops - you know, precisely the one's that IT admins would love to have focused on building platform compliant software? You can help by showing your vote...
|
|
CSI-Windows Debugging Checklist Mousepad for Previous Students of DesktopEngineer.com |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Wednesday, March 31, 2010 2:00am |
|
If you've ever taken a class from DesktopEngineer.com or CSI-Windows.com and did not receive one of our cool Debugging Checklist mousepads, drop us a line to get yours. See below for a graphic of what it looks like.
|
|
Fixing Windows Installer Error 2738 |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Monday, March 29, 2010 2:00am |
|
Error 2738 is “Could not access VBScript run time for custom action <custom action name>. You can quickly find out that you need to register vbscript.dll, but there is a nasty gotcha if you are too quick on the draw.
|
|
Installing MSI Packages with Bad Custom Actions on Windows 7 |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Tuesday, March 23, 2010 1:16am |
|
Even with all of Microsoft’s concerted efforts to get older MSI packages to run on Windows 7, there are still some challenging ones. When these occur during the UI sequence of the package, there are several things you can try to get the package to install.
|
|
Two New Consulting Offerings |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Monday, March 22, 2010 8:45pm |
|
We are adding two new consulting services to our offerings on CSI-Windows.com. The first one is micro-service offering called "Windows 7 Application Compatibility Shimming" - it is designed to help Administrators or Developers get a troublesome application working on Windows 7. It is a fixed price and you only pay if the application can be made to run. The second one is called "Corporate Deployability Assessment for Commercial Software MSI Packages" It is designed for Software Developers to help them make sure their software package is easy to deploy. The Windows 7 Logo has no setup program requirements - so even the most compatible software application can be difficult to deploy.
|
|
How To Extract a Single File From a Large MSI (4 Ways) |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Thursday, March 18, 2010 7:25pm |
|
There may be times when you need a file or two out of a Microsoft SDK or other large distribution. It can be a painful process to install an entire SDK or toolkit to obtain a single file, so we’ve documented some better ways.
|
|
UPDATED: bginfo template 1.6 |
|
|
|
CSI Toolkit
|
|
Written by Darwin Sanoy
|
|
Wednesday, March 17, 2010 2:00am |
|
Our Bginfo template has been updated to version 1.6. It has been updated to accurately report whether the OS is 32 bit or 64 bit and whether the Hardware is 32 Bit or 64 Bit.
|
|
Norton Installs Itself Like Malware and Then Asks Me “How Safe Is Your Computer?” |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Wednesday, February 3, 2010 4:24pm |
|
Quite amazing. After I was away from my computer for a couple hours I came back to the below dialog window (Figure 1) asking me “How safe is your computer?” Regardless of how safe my computer is or isn’t, I wouldn’t expect this from a company trying to get my security business back. So I set about reverse engineering how it got there…
|
|
Test for Admin Rights - Fast, Small, Efficient, Universal Script Code in VBS and CMD/BAT |
|
|
|
CSI Toolkit
|
|
Written by Darwin Sanoy
|
|
Tuesday, January 26, 2010 1:20pm |
|
This script code uses a fast and efficient method for determining whether the current session (process) has admin rights. The compact code is provided in VBS (9 lines) and CMD/BAT (3 lines). It works with XP / Server 2003 through Windows 7 / Server 2008. It works with UAC (reports admin rights only if session / process elevated). It uses passive methods to determine rights – in other words, it does not try to change anything on the target system.
|
|
UPDATED: bginfo template 1.5 |
|
|
|
CSI Toolkit
|
|
Written by Darwin Sanoy
|
|
Wednesday, December 2, 2009 4:39pm |
|
Our Bginfo template has been updated to version 1.5. The template content is the same, but the installer now handles XP, checking for a copy of bginfo.exe next to script, checking for elevated admin on Vista and later (Version 6 and later). You can use the installer script to see a simple Shell (.BAT, .CMD) scripting method to check if someone is an elevated admin...
|
|
Malware Scanners Missing Stuff – Procmon Install Spy To The Rescue… |
|
|
|
CSI Toolkit
|
|
Written by Darwin Sanoy
|
|
Monday, November 23, 2009 12:06pm |
|
I had two different scenarios in two days where some of the top malware scanners completely ignored very concerning changes to systems I was working on…
|
|
How Do I UAC Prompt Thee? Let Me Count The Ways. (The Definitive UAC Prompt Guide) |
|
|
|
CSI Toolkit
|
|
Written by Darwin Sanoy
|
|
Thursday, November 12, 2009 1:18pm |
|
UAC has caused a lot of buzz ever since Vista was released. Sometimes even I wonder if the topic of UAC comprises a measurable amount of the total web and email conversations about technology for the last two years ;)
The main concern about UAC has always been those pesky prompts asking your permission to do innocuous activities like deleting kernel32.dll. Sometimes you get them when you don’t want them and sometimes you don’t get them when you should. It turns out there are many ways to cause or suppress UAC prompts – this post attempts to document them all…
|
|
Sample Template Application Manifest [Updated] |
|
|
|
CSI Toolkit
|
|
Written by Darwin Sanoy
|
|
Wednesday, November 11, 2009 1:21pm |
|
If you are just getting started with using manifest files to configure UAC elevation prompts, it can be difficult to remember what the options are and what to do if there is already a manifest. The following is a complete sample template of an application manifest and is commented so that you can…
|
|
Single Click Screenshot to Email |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Thursday, September 3, 2009 12:17pm |
|
The other day I received an email about an error a user was experiencing, I wanted to see a screen shot and started to write an email detailing the steps required to capture and email me a screenshot when I suddenly realized “Wow, for how helpful screenshots are, this is sure an overly complex process”. Some Googling turned up just what I was looking for and it is free and does not require installation …
|
|
Russinovich on Windows 7 User Account Control (UAC) |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Tuesday, September 1, 2009 1:07pm |
|
Mark Russinovich has authored a Technet article on the changes to UAC for the Windows 7 release…
|
|
A .manifest File Can Be Virtualized |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Thursday, July 2, 2009 9:54pm |
|
If you include a <trustinfo> section in a .manifest file for an EXE, virtualization is disabled for that EXE. However, if you are not careful, you can end up creating a virtualized .manifest and it will be …
|
|
Complete Online Catalog of all Windows 7 DLLs |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Wednesday, July 1, 2009 9:05am |
|
This is an interesting site which contains a DLL Catalog for every DLL that ships with Windows 7. The catalog is built with the information from within the files – it does not contain commentary about what the files are for (other than the descriptions that can be extracted from the files). It does…
|
|
File Recovery Sweetness – Free Beats The Pants Off Paying |
|
|
|
CSI Toolkit
|
|
Written by Darwin Sanoy
|
|
Friday, June 12, 2009 8:04am |
|
Oh that sinking feeling after deleting a file that is your only good copy of a script. However, the second sinking feeling of knowing there is no recycler copy because the deletion happened via another machine over the network is even worse! I ended up using two products to attempt recovery – my paid for copy of Stellar Phoenix ($99) and the free and famous Recuva. Guess which one out performed in multiple was…
|
|
VBScript UAC Function for Snooping Permissions |
|
|
|
CSI Toolkit
|
|
Written by Darwin Sanoy
|
|
Thursday, June 11, 2009 4:55pm |
|
4/5/2010 Update: This script function has been superceded by the much more capable "IsSession.vbs" available here.
Maybe you have come across some of the UAC VBScript snippets for figuring out whether the current user is an administrator and even whether they are elevated or not. I wanted a quick and lightweight solution to figure our whether a user was admin and whether they were elevated. Once I got started, it didn’t take much to add checks for all the other groups and special permissions. And it’s all done in 40 lines…
|
|
Windows 7 News Clearinghouse |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Wednesday, June 10, 2009 2:19pm |
|
Looking for the latest news about Windows 7? Windows7news.com has you covered. All the latest, including news of leaked builds. Don't overlook the...
|
|
Tools List for Understanding Windows Integrity Mechanism (WIM) |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Wednesday, June 10, 2009 4:53am |
|
If your company decided to wait on Vista, you may not have had opportunity to get into the core technology that Microsoft introduced in version 6 of its kernel which powers Vista, Win7, Server 2008 and Server 2008R2. Integrity Levels (ILs) are a new and significant feature of the new kernel.
|
|
BOOK: Windows Internals, 5th Edition: Sent To Printer |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Monday, June 1, 2009 9:41am |
|
The 5th edition of the defacto guide on Windows internals went to press in May. The 1200 page volume covers through Windows Vista and Server 2008.
|
|
FREE E-BOOK: Understanding Microsoft Virtualization Solutions |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Thursday, May 28, 2009 8:44pm |
|
Although it is listed as the Microsoft Press free e-book, it is still downloadable (as of 5/28/09). You may want to follow up on this one quickly – the free e-book offers don’t usually last past the end of the month they are published in.
|
|
DesktopEngineer.com Launches CSI-Windows.com - Windows Internals Training Focused on Application Management |
|
|
|
Releases
|
|
Written by Darwin Sanoy
|
|
Wednesday, May 27, 2009 11:25am |
|
FOR IMMEDIATE RELEASE
DesktopEngineer.com Launches CSI-Windows.com – Windows Internals Training Focused on Application Management
PHILADELPHIA – May 26, 2009 -- DesktopEngineer.com, a leading provider of training for application management on Microsoft Windows, offers new technical training to aid in getting applications running under Windows 7 and application virtualization.
|
|
BOOK: “Debugging” – Disciplines For All Technologists |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Monday, May 25, 2009 8:20am |
|
Troubleshooting and debugging is one of those life activities that we tap into relentlessly - yet never learn about in a structured manner. “Debugging” by David Agans sheds some light on the general principles that produce reliable results no matter what you have under your microscope.
|
|
Windows 7 / MSI 5 "Dual-Purpose Packages" A No Starter? |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Tuesday, May 19, 2009 1:25pm |
|
I love dig deep into new functionality and find out how it works, but it also leads to unearthing implicit limitations - especially when you reconsider a technology in the framework of the current real environments it will need to work in, rather than the brave new world it seeks to define.
In preparing for a recent conference session I did some extensive testing of the big name feature in Windows Installer 5 which ships with Windows 7. I have some concerns about this new functionality and I am sharing them in this post...
|
|
Why Custom Actions get a Windows Vista Version Lie on Windows 7 |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Friday, May 15, 2009 10:47am |
|
Chris Jackson has a great article on the reasons behind why Windows Installer 5 (Windows 7) custom actions are lied to by the shimming engine. It also provides another great example that Microsoft is committed to the shimming infrastructure to the point where major segments of the OS rely on it for their own compatibility. Shimming is not a bolt-on!
Why Custom Actions get a Windows Vista Version Lie on Windows 7
|
|
CSI Toolkit: Windows Services Optimizer (WinServicesOptimizer.vbs) |
|
|
|
CSI Toolkit
|
|
Written by Darwin Sanoy
|
|
Friday, May 15, 2009 4:20am |
|
Disabling unnecessary Windows services can result in significant performance gains for production machines and virtual machines. This script helps you manage and share templates for services optmization - including only starting services when they are needed. Some services optimization templates are included and instructions are included for converting from other services optimization tools. Click "Read More" for much more information about the benefits, uses and implementation of the script.
|
|
New Class: CSI-470 Application Virtualization Fundamentals |
|
|
|
Training Updates and Additions
|
|
Written by Darwin Sanoy
|
|
Wednesday, May 13, 2009 3:33pm |
|
A new course has been added to our offerings. CSI-470 Application Virtualization Fundamentals will help you understand the common principles and mechanisms behind virtualizing applications. You can also get your hands dirty with some of the teir 1 tools in this space.
Check it out CSI-470 Application Virtualization Fundamentals
|
|
MMS 2009 Follow Up Videos |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Saturday, May 9, 2009 1:51pm |
|
The attached videos contains the working version of my demonstration for Windows 7 Per-User Applications (MSI 5). I have also posted the test package that allows you to reproduce the demos as well as do several other tests of Windows Installer 4 and 5 in your production environment. The download includes a 30 page lab manual to step you through several of the capabilities of the test package. Click "Read More" to see the videos.
|
|
Test Package and 30 Page Lab Manual for Testing MSI 4.0 (Vista) and MSI 5.0 (Win7) Features |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Thursday, May 7, 2009 10:00pm |
|
I spoke at the Microsoft Management Summit 2009 on the new features in Windows Installer since the 4.0 (Vista) release. As part of this I used a test package to demonstrate the features. The attached file includes the test package and a 30 page lab manual so that you can test these new features in your production environment.
|
|
Acresso Expands InstallShield Packaging Suite to Support Output to Three Virtualization Formats |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Wednesday, April 29, 2009 5:32pm |
Feeling daunted by the prospect of ramping up for application virtualization? Acresso has retooled the AdminStudio packaging suite to output to the three primary application viritualization formats. There are many potential benefits to this approach. There were three that struck me as very beneficial.
|
|
CSI Toolkit: bginfo template for Windows 7 Testing |
|
|
|
CSI Toolkit
|
|
Written by Darwin Sanoy
|
|
Tuesday, April 28, 2009 10:27am |
|
The attached file contains a .bgi template for Sysinternals BGInfo and an installation shell script. We use it on the virtual machines for all our courses. It places all the security and UAC details of a Windows 7 (or Vista) machine on the background bitmap. I have seem many threads on the net about trying to get bginfo to run for all standard users and do it without admin rights. Just run the installation script (bginfoinst.bat) in an elevated command prompt and then bginfo will run for all users who login, whether or not they are admins or elevated.
|
|
Darwin Sanoy at the Microsoft Management Summit |
|
|
|
General
|
|
Written by Darwin Sanoy
|
|
Saturday, April 25, 2009 8:58pm |
My name is Darwin Sanoy, and I am the principal trainer for CSI-Windows.com. I will be speaking at the Microsoft Management Summit 2009 in Las Vegas. This is the 11th year that I have spoken at this conference and its predecessors
SC32 What's New In Windows Installer for Vista and Windows 7 and What You Should Do About It.
Speaker(s): Darwin Sanoy
Track(s): Client Management Technologies
Since Windows XP, Windows Installer has undergone two releases with a third planned for Windows 7. Find out what is in these releases and how you should accomodate these advances in your Windows desktop roadmap. This session will focus on technical aspects of Windows Installer releases while paying special attention to how these changes may enable or hinder your technical strategies for things like managing users who have admin rights, UAC and deployment of packages through distribution systems.
View Site (Select "Darwin Sanoy" in speaker drop down)
|
|
RegScanner – Google for your registry |
|
|
|
CSI Toolkit
|
|
Written by Darwin Sanoy
|
|
Saturday, April 25, 2009 1:51am |
|
RegScanner is a very cool little utility for finding things in the registry. RegEdit's built-in search functionality is similar to notepad. Type your search string and keep pounding F3 until you find something similar to what you're looking for. Lots of wasted time.
Here's some things I love about RegScanner:
|
|
RELEASED: Application Compatibility Toolkit 5.5 |
|
|
|
CSI Toolkit
|
|
Written by Darwin Sanoy
|
|
Thursday, April 23, 2009 2:00am |
|
ACT 5.5 has been released. Microsoft has made sure that the entire toolset is Windows 7 ready. The help documents have been enhanced with more information on Shims - Microsoft has been making big improvements on the help documents for over a year.
View | Download (11MB)
|
|