Extract embedded Flash (SWF) files from a PowerPoint presentation
Posted by bb on Tuesday 20th of March 2012 at 8:44 am.
Filed Under IT Tipz & Trix
I was recently asked by my boss if I could dump all of the Adobe Flash videos out of our corporate PowerPoint presentation so that we can convert them to .mp4/.mov so we can put some of the animations on iPhone so our reps can show them to the customer.
It really is not as easy as it looks!
I googled a fair few sites looking for answers and there really isn’t much out there that will do this auto-magically for you. So I rolled my own
The procedure is very simple.
- 1. Open PowerPoint file and ensure that it is saved as .pptx (the new XML Office format)
- 2. Rename the .pptx as a .zip file (we all know that the new format is already zipped up right?)
- 3. Open the .zip file in winrar/winzip or your preferred utility
- 4. Navigate to the .\ppt\activeX directory in the archive
- 5. Extract all the .bin files to another directory
- 6. Run the php script below on it
All the script does is scan the files in the current directoy to see if they are .BIN files (which is where PowerPoint stores SWF files, as well as other embedded file types), search through that file for the beginning of the SWF file header (denoted by FWS), read the file length as defined in the header and save that section out to a new file with a .swf file extension.
Simples really
As always, hope it helps someone. Script follows :
About this Post
Permalink | Trackback |
|
Print This Article | Leave a Comment
What to look for in an IT support company
Posted by bb on Tuesday 8th of February 2011 at 5:01 pm.
Filed Under IT Tipz & Trix
A lot of people have recently asked me how to choose the right company for their IT support. Below are my guidelines on what to look for.
1. Check how many engineers they have on staff – not subcontracted.
2. If they do subcontract – ask why.
3. Visit their workshop – it is your lifeblood they are looking after. Make sure they have the tools to deal with it.
4. Get references – and make sure you have the name of the technician they worked with as good technicians will often leave a bad company.
5. Follow up the references – ask for examples of problems that they have solved for you. See if you can speak to the technician in the reference.
6. Ensure that you meet the technicians – after all, you will be dealing with them, not the guy who sold it to you.
7. Make sure that IT is their primary focus – you don’t ask your mechanic to fix a filling / perform heart surgery.
Most importantly you should remember that if your IT fails, your business will suffer. Don’t just accept at face value what a salesperson tells you a company can do as sales people are generally not technical people. Sales people are commission focussed – technical people are solution focussed. No one (that I know of) pays their technicians on a per fix basis. Sales people are commissioned on a per contract basis (generally).
Ultimately you need to be sure that the company you choose values your business as much as you value your IT. That is why it is important to pick a company that has made an investment in staff, workshop and spares and not just in a flashy advertising campaign/website.
Personally speaking, if the company who approaches me for IT support doesn’t have 100% focus on IT solutions, I’m not interested. My lifeblood should be their lifeblood – my data is vital to me and it should be to them. I don’t want anybody looking after my business / data who isn’t 100% focussed on that.
About this Post
Permalink | Trackback |
|
Print This Article | Leave a Comment
Jerky Mouse in Windows 2008 R2 under ESXi4.1
Posted by bb on Tuesday 5th of October 2010 at 12:31 pm.
Filed Under IT Tipz & Trix
The laggy mouse issue seems quite common and after a bit of Googling I have found a solution that worked perfectly, at least for me.
It’s a simple video card driver upgrade!
-
If you go Start -> Right Click on My Computer -> Manage and under Diagnostics you find the Device Manager.
Scroll down to Display Adapters and expand the selection so that you can see the currently installed adapter. Right Click and go to Update Driver Software.
Select ‘Broswe my computer for driver software’ and navigate to C:\Program Files\Common Files\VMWare\Drivers\wddm_video folder
Update the driver and reboot!
Everything is now fixed
Hopefully this will help anyone else who is having poor mouse performance in Windows 2008 R2 under ESXi4.1 – it is no fun using vSphere to work on a VM with a horrible, jerky, jumpy, laggy mouse!
About this Post
Permalink | Trackback |
|
Print This Article | 1 Comment
Moving shares between SBS 2003 & SBS 2008
Posted by bb on Tuesday 15th of June 2010 at 10:36 am.
Filed Under IT Tipz & Trix
Still migrating the data over for my client, I ran into the usual problem of moving data from one drive to another preserving both NTFS ACLs and share details.
The easiest way round this, that I have found, is as follows
Issue the following commands from the command prompt on the destination server to copy all of the NTFS ACLs and data over from the source server to the destination server (in my instance I was copying their data drive, which was D) so my commands looked like this
net use z: \\source_server\d$
robocopy z:\ d:\ /E /COPYALL
However, this does not preserve the share info. Since mine was a fresh install, I just needed a complete copy of the drive and share permissions I just exported the following registry info from source server :
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\Shares]
Re-importing that on Destination server had everything up and running in copy_time+2 mins
Happy days
About this Post
Permalink | Trackback |
|
Print This Article | 1 Comment
Moving lists between SharePoint sites
Posted by bb on Tuesday 15th of June 2010 at 10:24 am.
Filed Under IT Tipz & Trix
Once I’d overcome the issues with user permissions outlined here I noticed that the companyweb was different to oldcompanyweb.
A lot of the metadata was missing, including version history. Turns out that this is quite the problem just using stsadm from the command line.
However, I found a great tool called SharePoint Content Deployment Wizard.
In my case, I just deleted the lists that didn’t have the data required and re-imported them using this tool though you could use it just as well to skip the whole stsadm -o export/import proceedure. Though please make sure which account you are logged in as else you may run into the problems outlined in my previous post.
Again – hope it helps!
About this Post
Permalink | Trackback |
|
Print This Article | Leave a Comment
SBS 2003 -> SBS 2008 Migration
Posted by bb on Tuesday 15th of June 2010 at 10:16 am.
Filed Under IT Tipz & Trix
Long time no post!
Thought I would update my blog with some hints and tips for some problems I hit in a recent client migration from SBS 2003 -> SBS 2008.
Following the Microsoft tech document everything went smoothly until I needed to recreate the old companyweb.
stsadm -o export -url http://OldCompanyWeb -filename cweb.bak -includeusersecurity completes with no errors
[6/14/2010 12:09:49 PM]: Progress: Export Completed.
[6/14/2010 12:09:49 PM]: Finish Time: 6/14/2010 12:09:49 PM.
[6/14/2010 12:09:49 PM]: Completed with 0 warnings.
[6/14/2010 12:09:49 PM]: Completed with 0 errors.
Though I do notice the following in the log file :
[6/14/2010 12:09:10 PM]: Debug: Security check failed in OnListItemExport
The actual site http://OldCompanyWeb looks and runs just fine
When issuing the stsadm -o import -url http://companyweb -filename cweb.bak -includeusersecurity I get the following errors
Multiple instances of :
[6/14/2010 1:30:09 PM]: Debug: Security check failed in OnUserGroupExport
[6/14/2010 1:30:10 PM]: Warning: The specified user could not be found.
*** Inner exception:
User cannot be found.
at Microsoft.SharePoint.SPUserCollection.FindUserSID(String strSearchText)
at Microsoft.SharePoint.SPUserCollection.GetBySID(String strSid)
at Microsoft.SharePoint.SPUserCollection.GetBySID(Byte[] byteSid)
at Microsoft.SharePoint.Deployment.SecurityObjectSerializer.ResolveUser(ImportStreamingContext context, SPWeb web, Byte[] sid, Int32& idUser)
[6/14/2010 1:30:10 PM]: Debug: Security check failed in OnUserGroupExport
[6/14/2010 1:30:10 PM]: Warning: The specified user could not be found.
*** Inner exception:
and at the end
[6/14/2010 1:34:50 PM]: Progress: Importing Role Assignment for _catalogs/users.
[6/14/2010 1:34:51 PM]: FatalError: Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))
at Microsoft.SharePoint.SPGlobal.HandleUnauthorizedAccessException(UnauthorizedAccessException ex)
at Microsoft.SharePoint.Library.SPRequest.ResetSecurityScope(String bstrUrl, UInt32 dwObjectType, String bstrObjUrl, Guid guidDoc, Boolean bUnique, Boolean bCopyRoleAssignments, Guid& pguidScopeId, Int32& piError)
at Microsoft.SharePoint.Deployment.RoleAssignmentsImport.ProcessComplexElement(ImportStreamingContext context, XmlReader xr, SqlSession session)
at Microsoft.SharePoint.Deployment.SqlBatchImport.Run()
at Microsoft.SharePoint.Deployment.SecurityObjectSerializer.SetObjectData(Object obj, SerializationInfo info, StreamingContext context, ISurrogateSelector selector)
at Microsoft.SharePoint.Deployment.XmlFormatter.ParseObjectDirect(Object objParent, Type objectType)
at Microsoft.SharePoint.Deployment.XmlFormatter.DeserializeObject(Type objectType, Boolean isChildObject, DeploymentObject envelope)
at Microsoft.SharePoint.Deployment.XmlFormatter.Deserialize(Stream serializationStream)
at Microsoft.SharePoint.Deployment.ObjectSerializer.Deserialize(Stream serializationStream)
at Microsoft.SharePoint.Deployment.ImportObjectManager.ProcessObject(XmlReader xmlReader)
at Microsoft.SharePoint.Deployment.SPImport.DeserializeObjects()
at Microsoft.SharePoint.Deployment.SPImport.Run()
[6/14/2010 1:34:51 PM]: Progress: Import Completed.
[6/14/2010 1:34:51 PM]: Finish Time: 6/14/2010 1:34:51 PM.
[6/14/2010 1:34:51 PM]: Completed with 18 warnings.
[6/14/2010 1:34:51 PM]: Completed with 1 errors.
Turns out that the account I was using (one created with full admin rights as the deployment document states that it is recommended that you create a new administrator account on the Source Server for migration instead of using the built-in Administrator account) did not have the correct permissions to do this.
Even though I used the ‘Run as’ option to run the command prompt as administrator :/
Logging on as a different user (in my case using the built in Administrator account) solved all the above issues.
Hope it helps someone
About this Post
Permalink | Trackback |
|
Print This Article | 1 Comment
A large amount of memory is committed to applications and processes.
Posted by bb on Thursday 14th of January 2010 at 10:31 am.
Filed Under IT Tipz & Trix
This is a fairly common alert issued by SBS. The whole alert looks like
A large amount of memory is committed to applications and processes. Consistently high memory usage can cause performance problems.
To determine which processes and applications are using the most memory, use Task Manager. Monitor the activity of these resources over a few days. If they continue to use a high level of memory and are less critical processes or services, try stopping and then restarting them.
You can disable this alert or change its threshold by using the Change Alert Notifications task in the Server Management Monitoring and Reporting taskpad.
Whilst there are lots of very good posts on dealing with issues about sqlserver taking a lot of physical memory, this post is geared towards what happens if taskmanager shows that services.exe is taking too much memory.
From a command prompt we type tasklist /svc :
From this we can see that services.exe is running Eventlog and PlugPlay. Let’s have a look at Eventlog. Firstly we can fire up the Event Viewer. We get this :
Wow – look at the size of the security log. According to Microsoft the default size of the log should be 16Mb.
Reducing the size of the security log requires clearing it, so if you need to, make sure you back it up first. I have encountered this problem a couple of times and each time it has been because the security log size was increased to track something and the size not reduced afterwards.
As soon as the size was reduced, services.exe stopped consumming so much memory and the alerts stopped.
To reduce the size of the log, right click on the log in the left hand panel that you wish to change, and select properties. You should then see this window :
In this example, we are resetting the log size to 16Mb. Adjust as you see fit for your installation.
Hope this helps some!
About this Post
Permalink | Trackback |
|
Print This Article | Leave a Comment
Have you tried re-installing it?
Posted by bb on Wednesday 15th of July 2009 at 3:38 pm.
Filed Under Misc, News
You know what, I actually think I’ll get a reply from Ed – he is doing a good job of restoring my faith in support, if not Sage as yet. For that we’ll see how they deal with the actual support call when it goes in.
Well, to say not well would be an understatement.
I listened in on the support call that we made to Sage today. Apparently it is all the fault of someone else. Third party software you see.
No, it’s not ACT!’s fault that it incorrectly queries the OS for available TAPI interfaces. Its all to do with the way they link in you see. If the 3rd party software (a telephony interface, AFAIK, barely constitutes 3rd party software, but that’s why I’m not good enough to be a Sage tech support guy) isn’t written specifically to link in the right way with the way that ACT! links, well then the link is all wrong. And with wrong linkage – well – that’s out of supports hands! What can they do? No – of course they can’t tell ACT to requery the TAPI interfaces. No no no.
That is the sum total of the support I got. The TAPI interface was there, I uninstalled it, removed it as suggested by Ed and it still wasn’t there. I repeated this on a machine where ACT! had found the TAPI interface, and again ACT! lost it.
And this is where we got to the piece de resistance.
Have you tried re-installing it?
Why would I do that if it wasn’t ACT!’s fault? Maybe re-installing the software will rewrite the third party software’s bad linkage?
Why yes … that makes sense …
Whilt I commend Ed for trying to offer support, I condemn the actual support you get off them – especially the chap who tried to tell me the story of the never ending linkage. It was a stream of rubbish that nearly rivalled the salesperson who once told me the difference between a 486SX and a 486DX was that a DX could have an internal modem!
Sometimes, just sometimes, the person calling in for support actually has a fairly good handle on all things IT. Trying to baffle them with bullshit is a poor tactic in these cases -especially when you’re called on it and asked ‘how does ACT! query TAPI interfaces?’ and the best you can manage is ‘support doesn’t write the software’. This underlines your understanding of the problem and indicates that perhaps you are out of your depth a little.
Good luck buying support from Sage. You’ll probably end up spending good money to hear ‘it’s 3rd party software you see, not designed to link it properly with our linkage. Have you tried re-installing it?’.
Cunswups
About this Post
Permalink | Trackback |
|
Print This Article | 1 Comment
Sage – The End?
Posted by bb on Tuesday 14th of July 2009 at 10:18 am.
Filed Under Misc, News
And for the final chapter in the ongoing crusade between firstline Sage Corporate Support and poor little old me? Or alternatively, the final chapter in the ongoing crusade between corporate greed and the poor end user?
Thanks, I’ve put the note on the account you’ve given.
Thanks Ed – appreciate it. We’ll see if support can help me out on this issue.
In exceptional circumstances (such as this) we may be able to offer one-off courtesy calls to assist customers who have been unable to set up and configure their software within the 45 day warranty period. The majority of people, though, simply don’t need this and are up and running within that period.
We try to be flexible, as it’s very much in our interest for a customer to have the software successfully installed and being used. But for customers who think they’re likely to require support above and beyond installation after that initial 45 days (and your example below would be one of these situations, as the warranty doesn’t re-start with each new licence – just the initial purchase of the program), we offer our SageCover support contracts.
It does however still look like you are saying to your customers that they shouldn’t budget for the future. Where I am currently working is in the process of expanding – especially the IT division. We’re looking at bringing more people on board as are some of the other divisions.
What you are telling me here is to get any support off you, I have to buy the product on a case by case basis. Not to budget and grab a 10 user license when I only have 8 users, with a view to expanding and eventually using those other 2 licenses.
Because, and this is the point I appear to be unable to convey to you, you deliberately shaft the end user on the amount of support they can get without paying for it. I have to activate my license for ACT! – the 45 days should run from then. Not from the first install we do in a test environment prior to running it out in production. Not from some arbitrary timepoint completely unrelated to the installation that requires support.
Equally, if you do want extended support cover for ACT!, you’re not obliged to buy it from Sage – many of our business partners offer support services that match our own, some even going beyond what can offer here to the level of site visits, managing installation and rollout for you.
Lovely. I understand you wish to upsell people to an all inclusive, super-dooper support ‘care’ package. It’s not the point at hand though.
The fact is that unless you purchase only enough licenses to be used in 45 days, then you are sh*t out of luck if you need to call support on any of your unused licenses when you come to use them. The fact that you don’t cover BASIC OPERATION OF THE SOFTWARE is WRONG.
On a plain vanilla install, the fact that something is missing from an option screen, whilst otherwise correctly installed on the rest of the OS, is INSTALLATION / CONFIGURATION for first time use. 45 days or no 45 days, this is the sort of basic issue that you expect to get supported on without the need to resort to complaining/blogging to get the service.
I don’t care if you offer 450 days support – on the first install of your product, if it fails to correctly identify the telephony settings, the fact that I first installed it on another machine 451 days ago is completely and utterly irrelavent.
Whilst I commend you for your help in assisting me to get this problem resolved – does it strike you as reasonable that these are the hoops I have had to jump through?
I suspect not.
About this Post
Permalink | Trackback |
|
Print This Article | Leave a Comment
Sage Part III
Posted by bb on Monday 13th of July 2009 at 8:00 am.
Filed Under Misc, News
Fair play to Ed Tysoe, he follows up on the issues! I want to publically say thanks to him for sticking with the subject.
Purchases of ACT! (and other Sage programs) include a 45-day warranty. During this period, you’re covered for support with everything – installation, setup, customisation, and more general ‘How do I use..?’ queries.
Also, any issues raised during that warranty period we’ll continue to support for as long as they take to resolve – so if something happens on the 44th day, we’ll carry on supporting that particular issue until it’s resolved.
After that time, though, in the absence of an ongoing SageCover agreement, we do offer help only with the raw installation and registration of the software. Setup of specific program features (e.g. networking, synchronisation, dialler) are not covered.
On this occasion, we’d be happy to provide support for this particular incident, but I would need your account details to record on the account that we’d offered that support.
Assuring you of our best attention at all times.
Kind regards
Ed Tysoe
ACT! Technical Support
Sage (UK) Ltd
Well, I guess I’ll email him back with our details and see what happens. I’m sure you’ll understand if I don’t paste my reply to him verbatim!
I did email Ed back and mentioned the following – ‘What I don’t understand is why you limit it to 45 days on a multi-user install. If I am setting up an office, and expect to grow that office in the immediate future (next 3 months say), I may have unused licenses that remain uninstalled after 45 days. Maybe all the staff haven’t been employed, maybe we are waiting on hardware, maybe our expansion is behind schedule. There are a myriad of reasons for this. So when we install for a new user, on a license we purchased, if our intial install was over 45 days ago … what happens? We’re out of luck?
Are we meant to purchase the software single user license by single user license to be assured that we can actually get it installed? Is it pointless purchasing multi user licenses with a view to the future?’
You know what, I actually think I’ll get a reply from Ed – he is doing a good job of restoring my faith in support, if not Sage as yet. For that we’ll see how they deal with the actual support call when it goes in.
About this Post
Permalink | Trackback |
|
Print This Article | 2 Comments
RSS feed

