Tag: 64bit

FileMaker Custom Function for File Path to @Dropbox

FileMaker Pro

From the second version of my first database (back in 2002) I have used my FileMaker databases to control the creation of a structured folder system to enable the efficient and uniform storing of structured data for each of the businesses I have worked with.

Early on in my development of FileMaker systems I stumbled across the fantastic plugins offered by Troi Automatisering, in particular their File Plugin, now at version 5, which I will be creating this custom function to use.

This plugin enables me to create, with relative ease, a series of fields and scripts that allowed the automatic creation and opening of folders and files straight from the database. Relatively simple if you’re running FileMaker in a closed network, but it starts to get more complicated very quickly.

I’ve had the good fortune to design almost exclusively for Mac only networks (phew) although I have had to deal with mixed environments where my customers are still in transition from PCs to Macs so I’ve had to ensure that any system is compatible with both.

The Preparation

Determining the Windows System Version:

Since the route to the Documents folder hasn’t ever changed in Mac OS X I don’t need to worry about the version used, however, this is not the case in Windows where there is a different file path to the “My Documents” folder on Windows XP and the new versions Vista and Windows 7.

So I need to use the Get ( SystemVersion ) Function to determine whether or not the user is using Windows XP or a newer version. According to the FileMaker help the function returns the following information for Windows:

5.1 for Windows XP SP2

6.0 for Windows Vista

So I needed a test for which version of Windows is running. I did attempt to design my own custom function to determine this, but perhaps because I was unwell I wasted a good deal of time messing around with this before I came to my senses and looked at Matt’s github page.

His os.versionName custom function (which I’ve renamed as os.versions) is a quick and easy solution to this problem, which can go well beyond my needs, but will achieve what I want by returning the name of the Mac or Windows OS running on the users system.

It returns a simple easy to interpret name from the Get ( SystemVersion ) so the 5.1 response from the function is returned as “Windows XP” or 6.0 is returned as “Windows Vista”.

Dealing with Windows Folder Path Separators:

Windows file paths use the “\” separator. For some reason you can’t easily use these in FileMaker calculations (if someone knows why please let me know in the comments). So I’ve taken the easy step of creation of new global variable $$windowsnetworksymbol to contain the “\” separator.

n.b. To ensure this variable is set each time the FileMaker file is launched I’ve added it to a script called “Set Global Variables”, which I run as part of my start-up script.

Dealing with Mac Folder Path Separators

Mac file paths used by the plugin are formatted with the “:” separator. The only other thing you need to worry about is that a file path starts without any separator.

Get (DocumentsPath) Function

It is the product of this function that we have been working towards editing. The basic idea is to be able to call the Get ( DocumentsPath ) Function and then edit it’s product to point instead to the location of the Dropbox folder (assuming it is installed in the default location).

The Get ( DocumentsPath ) Function will return the following:

\C:\Documents and Settings\YourUserName\My Documents\ in Windows XP

\C:\Users\Your User Name\Documents\ in Vista or Windows 7

And we know from my earlier blog post: Default @Dropbox File Paths that the default file paths for Dropbox are:

\C:\Documents and Settings\YourUserName\My Documents\My Dropbox\ in Windows XP

\C:\Users\YourUserName\Documents\Dropbox\ in Vista or Windows 7

/Macintosh HD/Users/YourUserName/Dropbox/ in Mac OS X

So now we have all the building blocks in place it’s time to construct our custom function:

The path.dropbox Function

The function itself is relatively simple once we have done the above preparation. It has no parameters and is made up of a simple Case Statement which asks two questions:

1. Is the user running a version of Windows XP?

2. Is the user running either Windows Vista or Windows 7?

If both these questions are negative we will assume that the use is running Mac OS X.

Once we have determined which OS the user is using we will then grab the documents file path using the Get ( DocumentsPath ) Function and then reformat it to be compatible with the Troi File Plugin.

Formatting for Windows

We use the Replace Function to make this assessment:

Replace ( Get ( DocumentsPath ); 1; 3; “” )

This will replace the “\C:” part of the resulting Get ( DocumentsPath ) with simply “”.

We encase this Replace Function within a Substitute Function so that we can substitute the “/” separator for the “\” separator contained within our $$windowsnetworksymbol and get a properly formatted Windows file path for the Troi Plugin. So we get:

Substitute ((Replace (Get(DocumentsPath); 1; 3; “”)); [“/”; $$windowsnetworksymbol])

With both Windows File Paths to the Dropbox we then simply need to append the correct location which we can easily do by adding:

& “My Dropbox” & $$windowsnetworksymbol in Windows XP

& “Dropbox” & $$windowsnetworksymbol in Vista or Windows 7

Formatting for Mac

We again use Replace Function to remove the leading “/” and as before encase this within a Substitute Function so that we can substitute the “/” separator for the “:” separator. So we get:

Substitute ((Replace (Get(DocumentsPath); 1; 1; “”)); [“/”; “:”]; [“Documents:”; “”])

As you’ll notice we have also added to the Substitute Function a statement to replace the “Documents:”, which will strip back the Mac File Path to the User so we can then append:

& “Dropbox” & “:”

which will get us to the default location for the Dropbox on the Mac.

The Final Function:

Case (

os.version = “Windows XP 64-Bit” or “Windows XP”; Substitute ((Replace (Get(DocumentsPath); 1; 3; “”)); [“/”; $$windowsnetworksymbol]) & “My Dropbox” & $$windowsnetworksymbol;
os.version = “Windows 7” or “Windows Vista”; Substitute ((Replace (Get(DocumentsPath); 1; 3; “”)); [“/”; $$windowsnetworksymbol]) & “Dropbox” & $$windowsnetworksymbol;
Substitute ((Replace (Get(DocumentsPath); 1; 1; “”)); [“/”; “:”]; [“Documents:”; “”]) & “Dropbox” & “:”

)

Please note that I have not yet had the opportunity to test this on a Windows system, but I’ve followed paths that worked in the past. As soon as I have had the opportunity to test it I will post any corrections here.

Filed under: FilemakerTagged with: , , , , , , , , , , , ,

VLC downgraded to 32 bit

VLC

VLCSo. This was unexpected. In one of my earlier posts on the 64 bit revolution taking place since the introduction of Snow Tabby I mentioned that VLC had been upgraded to version 1.0.1 that was now 64 bit compatible.

Unfortunately the 64 bit version of VLC only made it through one  more itteration, by version 1.0.3 it had reverted to 32 bit only. :-(  The explanation provided by the open source development team was that they don’t have enough developers to focus on it being 64 bit.

This has additional ramifications if you use VLC with Handbreak as it is now 64 bit and apparently the 32 bit and 64 bit codecs don’t play nice together. So if you’re having problems go here to download the 64 bit version. And if you know any developers who can help out with the development then ask them to give a hand!

Filed under: 64 bit, MacTagged with: , , ,

Logic Pro, Mainstage go 64 bit

Logic Studio

Logic StudioSo Apple has finally started to update it’s Pro software starting with it’s Logic Pro and Mainstage products. So if you’re a music fan or pro then you’re in luck, you ability to address memory just went up from 4Gb to 64 exabytes (if you can afford that much memory – MacObserver reckons it’d cost approx. $450bn – or buy a machine that will fit it).

For information see Apple’s handy FAQs or specifically Logic Pro or Mainstage.

Filed under: 64 bitTagged with: , ,

Upgrading to VMWare Fusion 3

VMware Fusion 3

VMware Fusion 3So my aunt called me this morning and asked me to pop over and upgrade her VMWare Fusion 2 to the new version 3, which I had persuaded VMWare to give her a free upgrade to, after biting the bullet and buying version 2 as a replacement to parallels one day before the period for which they were offering free upgrades.

The upgrade process for the new program and her virtual machine went like a dream and in a little under twenty minutes after downloading version 3 we were up and running. This is, unfortunately, where the problems with VMWare tools began…

The initial installation ran the VMWare tools installer but it simply didn’t go anywhere and after about twenty minutes of waiting around for it I did some googling and came across this article on the VMWare site that advised me to uninstall the previous version of VMWare tools before proceeding. A few minutes later this was done, but now not even the installer ran.

After some additional googling I learnt that it worked by mounting an ISO to the virtual machine and then the hunt was on for where that file would be locally stored so I could manually burn it to a CD and side step this issue. After a good amount of time I found the ISO was stored here:

Library/Application Support/VMWare Fusion/isoimages/windows.iso

After a little playing around I copied it to a usb and mounted the usb in windows and voila I could now install the VMWare tools successfully. If it hadn’t been for the problem with VMWare tools this upgrade would have been an hour at most job, but as it was it took over two hours (ouch) so if any of you are having the same problem, rest assured that the solution really is quite simple.

Filed under: TechTagged with: , , , ,

Handbreak updates to 64bit

Handbreak

Diligent as you may be sparkle is not always reliable for letting you know when an update is available and it was down to the guys and gals over at TUAW to let me know about the release of the new version of Handbreak (0.9.4), which is now 64bit compatible!

If by chance you haven’t heard of Handbreak before, it’s the leading free, open-source video transcoder available for the Mac (as well as PC and Linux platforms). It can take your .avi files or dvds and turn them into sparkling new mp4 files (with default options including encoding for iTunes, the web and the like) or anything else your heart desires.

I can highly recommend it, though running on a newer Intel Core Duo Chip or above is essential as video transcoding takes a surprising amount of time and the slower your processor the longer it takes!

Anyway find the update here.

Filed under: TechTagged with: , , , , , ,

At last! A Mac Mini Server!

There have been many arguments over the years about Macs being more expensive than PCs and though I have often thought that the arguments justifying this opinion are mostly without base, they seem to have stuck quite firmly in the minds of the consuming public and the business community in particular. In one area though the reverse, since the release of OS X, has always been true: a Mac Server is significantly less expensive than a Windows Server.

However, a Mac Server has generally remained mostly outside of the purchasing range of a small businesses, especially those focused on low-cost, due to the general need to buy a Xserve, a rack, and all the associated costs. Now for those in the know, a Mac Mini accompanied by a copy of OS X Server (10 user version) has for many years been the easy route around this problem, but required a bit of know-how and was certainly not an off the shelf purchase.

Now this has all changed with the release of a new Mac Mini Server by Apple. For the low price of £799 (inc. VAT) you can have your own dual 500GB, 2.53 GHz Intel Core 2 Duo, with 4GB of RAM and an unlimited edition of  OS 10.6 Snow Leopard Server. Now that’s affordable. Even for a small business with only a couple of computers. And off the shelf and with you within 3 working days!

Mac Mini Server

Now for those Borg lovers who are already going blue at the notion that a Mac can be cheaper than a PC I have one reply: it’s the licences stupid. With the Mac Mini server you get an unlimited copy of Apple’s server product, no user restrictions, fully featured, add as much as you dare to the little powerhouse and if you need to add a second cheaply (and no rack required just a 12″ square of desk space).

Now back to the licences. Appleinsider has a great example of the cost comparison between the new Mac Mini Server and a similar SME orientated Windows servers:

mosxs vs sbs

See how cheap? I can’t wait to have an opportunity to install my 1st Mac Mini off the shelf server. If you’d like to read an indepth review I highly recommend the Appleinsider review by Daniel Eran Dilger. Read it here.

Update

Macminiloco has published it’s annual “The State of the Mac Mini”, which gives an excellent breakdown on the new Mac Mini. Read it here.

Filed under: GeneralTagged with: , , , , ,

The 64 bit Question

So I upgraded to Snow Tabby almost a month ago now, and despite constant checking of appfresh there are still a few programs that have not got on the 64 bit train yet… despite me crossing my fingers! So here is a delightful image of my Activity Monitor (unfortunately it doesn’t include all the 32 bit programs)

Activity Monitor

The most annoying of these has got to be the flash plugin, which frequently crashes and often wreaks havoc across my system. Adobe has had a year to correct this problem. Why hasn’t it been done already? What its really shown me is how many pages have flash installed, most seem unnecessary and could be easily replaced with HTML5 features (#dieie6 or if you must keep it add Chrome Frame! cheers google) For me the long death march for Flash has begun.

There are some programs that I expected to be converted to 64bit much more quickly amongst these are:

Google Quick Search

A great program, a worthy successor (or at least quickly becoming one) to Quicksilver, still very much beta – so why no 64bit love?

Evernote

Another essential program, no clear mention about 64bit yet – their most recent blog post on the topic doesn’t go into details. :-(

Mozy

I use this program on all my computers to give me a secondary backup for libraries and essential files like contacts, calendars and the like. It’s particularly useful for my MBP and my Mac Mini, which I don’t care to try and backup using Time Machine over the network. But it’s had real problems since I’ve updated and it’s rather driving me nuts, so maybe I might start to look for a solution if it doesn’t get fixed soon, which is a shame really. :-(

Update – After posting I thought I’d give it another go. But it seems to be stuck at the magic 60.5% complete. Crazy. Bye bye Mozy, it was good whilst it lasted.

Update 2 – So it’s been updated to version 1.5, still no 64 bit loveliness but maybe it’s going to be stable?

Coda

This is the most user-friendly web html coding program I’ve used, now I’m also partial (after some pressing from my web-designer bro) to Textmate, but I still regularly use this program for its great inbuilt previewing features and its easy-to-use ftp management. I can’t really live without it, but I’d really like it to have some 64 bit love soon!

iTerm

I like all my apps to be tabbed and a tabbed terminal was just a must. It’s updated frequently but no 64 bit love yet…

Skype

It’s just been upgraded for more Snow Tabby compatibility, but still no 64 bit version! Maybe the new owners will give it a more radical update in the near future (I’m hoping for proper integration with Apple’s Address Book)

Adium

Multi-IM compatible goodness, allowing me to log in to all my various chat accounts everywhere. I’m looking forward to it’s upgrade to 64 bit (and again Address Book love soon please – I’ve had some success with a program called AdiumBook but I hope for more)

and some that have been upgraded, but might have problems!

VLC

The 64bit version is working great for me, but apparently not so great if you use handbreak.

I’ll keep you updated as my conversion to 64 bit loveliness… later

UPDATE –

Growl

My favourite notification system has just been updated to include 64 bit loveliness. Yey!

Filed under: GeneralTagged with: , , , , , , , , , , , , , , ,