What's patin-couffin, why we developped it and why we are now preferring SPTI over patin-couffin ?
To talk to the CD/DVD/BD drives, it is necessary to send them commands that are called Scsi Request Blocks (SRB). These commands must be passed to the drive with an interface. There are 2 interfaces:
* ASPI - It was the first standard interface. Not present with the OS, It was shipped as a "plugin" to Windows 9X/Me/NT/2000/Xp
* SPTI - It's an equivalent to ASPI, available since Windows NT (so 9X/Me cannot use that method)
Both Aspi and Spti contains severe limitations:
* ASPI is a copyrighted material, and wasn't really licenced, so legality of using it was a matter of discussion. Also ASPI has never provided a mechanism for getting an exclusive use on one drive.
* SPTI is available from NT and doesn't need an additionnal installation. However, SPTI is only available to users that have admin privileges on their account. Also, an exclusive lock was implemented only starting from Windows Vista, (and have been also ported to XP since SP3). However this doesn't operate with AnyDVD engine which may still access the drive no matter is was reserved for another software's exclusive use.
Patin-couffin was designed to avoid all these limitations. Patin-couffin can be used by any account, even if it doesn't have administrative rights, and can be used starting from Windows 9x to Windows 7. It provide a reliable drive locking dealing with AnyDVD. That was the purpose of Patin-Couffin.
So, why we are back to SPTI ? for 2 reasons.
* The exclusive use we have implemented in patin-couffin can efficiently lock a drive, but is not available to other software, and doesn't detect if the drive was already in use by a 3rd party application. The new SPTI mechanism give us a text hint on who is using the drive at a given moment.
* We have found a stability issue with Windows Seven 64 bits version and Patin-couffin latest version. under this OS, trying to kill an application using patin-couffin with the task manager will lead to a Blue Screen Of Death. Fixing this issue that occur only on W7 64bits would require a complete rewrite of the patin-couffin driver - which is a hard and long dev. task, which may introduce new bugs during beta phase and cause big delays on many VSO products.
So we took the decision to improve SPTI and use patin-couffin driver only in case were it is mandatory (basically non-administrative account)
Why not ASPI? I believe it operates at any account level (which is why Microsoft declared it "unsafe" and created SPTI).
Because ASPI implementation under NT/2K/XP/VISTA/SEVEN just wraps SPTI, it has the same limitations (admin account mandatory, no exclusive use feature even under Vista/Seven).