Spare your sanity. If you don want this to happen, never ever install Adobe Acrobat 8 Professional on a Windows Vista system with UAC enabled and Microsoft Office 2007 installed:

No amount of reinstalling solved the problem. You could either disable UAC, which leaves a big security hole in your system because almost everything will be running with administrator level permission, or you could reinstall Windows. I ended up reinstalling Windows because this Adobe piece of wondrous shit is making me go crazy.

IMHO, Adobe Acrobat 8 Professional just suck! It’s a freaking bloatware that takes up several gigabytes of your hard disk space installing nonsense and bloated libraries. The best thing to do is to get rid of that bloated crap. Here are your options:

  1. Use Microsoft XPS – Comes installed with Windows Vista and .Net Framework 3.5
  2. Can’t live without PDF? Use the open source PDF Creator. It creates PDFs and its free!
  3. Use Foxit PDF reader - It reads PDF, its free and its only 2.2MB
19
Mar

March 18, 2008 – Microsoft has finally released the first service pack for Windows Vista to consumers after months of delays due to technical and compatibility issues. The RTM version of the service has already been released to MSDN and Technet subscribers since early March.

For users who don’t want to wait for SP1 to be available on Windows Update mid-April, you can download the standalone installer here: http://technet.microsoft.com/en-us/windowsvista/bb738089.aspx?tapm=A80S01A01

The official SP1 build is 6001.longhorn_rtm.080118-1840

The extented forms are:
Vista x86 : 6001.18000.x86fre.longhorn_rtm.080118-1840
Vista x64: 6001.18000.amd64fre.longhorn_rtm.080118-1840

Direct download links:

Vista 32-bit: http://download.microsoft.com/download/3/a/9/3a9b72c2-527d-4694-8a49-84c056d4c34d/Windows6.0-KB936330-X86-wave0.exe
Vista 64-bit: http://download.microsoft.com/download/8/3/b/83b8c814-b000-44a4-b667-8c1f58727b8b/Windows6.0-KB936330-X64-wave0.exe

Note: You must uninstall any previous beta editions of SP1 before you can install the official release. The installation will take about 30 to 60 minutes depending on system performance.

It took me 2 solid hours to figure out why two visually identical strings would produce totally difference checksums.

After examining the byte output of mcrypt_decrypt, I found there are tons of trailing nulls behind the decrypted string. The reason why I could not visually differentiate between a string with trailing nulls ($A) and the one without ($B) is because the echo command and string concatenating commands seems to discard the nulls altogether.

However, byte level comparator like $A === $B and strcmp($A, $B) would produce negative results because they treat trailing nulls as valid data. In order to remove the trailing nulls caused by cryptographic padding, we simply remove the trailing nulls: rtrim($A, “\0″) such that rtrim($A, “\0″) == $B.

17
Mar

One of the most common problems encountered by novice PHP users is that cookies do not seem to persistent across subdomains using a normal approach found in many website examples.

The solution is simple. The full argument of PHP’s setcookie function is as follow:

bool setcookie ( string $name [, string $value [, int $expire [, string $path [, string $domain [, bool $secure [, bool $httponly ]]]]]] )

The trick is to set the value of $domain, something almost all self help tutorials will omit.

For example, to set a particular cookie to be accessible on all subdomains under bitsofbytes.org, we will set $domain = “.bitsofbytes.org”.

Simple as that!

16
Mar

While many PHP applications have started offering MySQLi connectivity, strangely enough, WordPress does not seem to have MySQLi support enabled out of the box.

(more…)