Log into another account on your Mac and see if iPhoto will run there. If so then there's a problem with your primary account.
Boot into
Safe Mode. That will automatically run the File System Check, fsck, so may fix some underlying problems. Try iPhoto then. If it runs OK boot normally and try it again so see if the fsck routine helped.
The next step I'd take is reinstsalling the 10.4.6
COMOB updater followed by a repair of disk permissions. And lastly, reinstall iPhoto (that may be the real fix all along). If you do try a reinstall of iPhoto you'll have to delete the current application and all files with "iPhoto" in the file name that reside in the HD/Library/Receipts folder.