After reading some of the posts of the support forum, I found out that I had the 64-bit and 32-bit version of C++ Redistributable. Should I uninstall the 64-bit version? Anyway, I have my GTA IV folder set not to read-only. Launched LaunchGtaIV.exe in Admin mode and game works perfectly. Except for NO MODS WORKING. No mods work, not even the trainer or ragdoll. I removed LCPDFR scripts and tried trainer but still doesn't work. Vice-versa.
EDIT:
This is the diagnostic report of the tool without the trainer.
BEGIN *SIGNED* LCPD First Response Issue Report
Diagnostics Tool Version: 0.4.3
Operating system: Windows7 Ultimate (6.1.1.0 Build: 7601) Service Pack:Service Pack 1
System RAM (GB): 7.98
CPU cores: 8
NET Framework 4.0 installed: True
Visual C++ 2010 Redistributable installed: True
GTA IV - Installed: True
GTA IV - Install folder: C:\Program Files (x86)\Steam\steamapps\common\Grand Theft Auto IV\GTAIV
GTA IV - Version: 1, 0, 7, 0
GTA IV - Asi loader installed: True
GTA IV - Asi loader: DSOUND
GTA IV - Asi loader valid: True
GTA IV - C++ ScriptHook installed: True
GTA IV - C++ ScriptHook valid: True
GTA IV - C++ ScriptHook version: 0, 5, 1, 0
GTA IV - ScriptHookDotNet installed: True
GTA IV - ScriptHookDotNet valid: True
===============BEGIN .NET SCRIPTHOOK LOG===============
2012-07-21 17:31:25 - Initializing ScriptHookDotNet v1.7.1.4 BETA (GTA IV version 1.0.7.0)
2012-07-21 17:32:10 - Direct3D device created!
2012-07-21 17:32:11 - SEARCHING FOR SCRIPTS...
2012-07-21 17:32:11 - Loading scripts in Assembly 'scripts\FirstResponse.net.dll' ...
2012-07-21 17:32:11 - ...found script 'FirstResponse.Main.EmergencyLights'!
2012-07-21 17:32:11 - ...found script 'FirstResponse.Main.Start'!
2012-07-21 17:32:11 - ...found script 'CSharp.Engine.Core'!
2012-07-21 17:32:11 - ...found script 'FirstResponse.Debugging'!
2012-07-21 17:32:11 - ...found script 'FirstResponse.DeletionList'!
2012-07-21 17:32:11 - ...found script 'FirstResponse.Hardcore'!
2012-07-21 17:32:11 - ...found script 'FirstResponse.TextDraw'!
2012-07-21 17:32:11 - ...found script 'FirstResponse.LCMD.Main'!
2012-07-21 17:32:11 - ...found script 'FirstResponse.LCMD.Functions'!
2012-07-21 17:32:11 - ...found script 'FirstResponse.LCPD.Carboot'!
2012-07-21 17:32:11 - ...found script 'FirstResponse.LCPD.Disarm'!
2012-07-21 17:32:11 - ...found script 'FirstResponse.LCPD.Frisk'!
2012-07-21 17:32:11 - ...found script 'FirstResponse.LCPD.PullOver'!
2012-07-21 17:32:11 - ...found script 'FirstResponse.LCPD.Actions'!
2012-07-21 17:32:11 - ...found script 'FirstResponse.LCPD.Debug'!
2012-07-21 17:32:11 - ...found script 'FirstResponse.LCPD.Flashlight'!
2012-07-21 17:32:11 - ...found script 'FirstResponse.LCPD.Functions'!
2012-07-21 17:32:11 - ...found script 'FirstResponse.LCPD.Partner'!
2012-07-21 17:32:11 - ...found script 'FirstResponse.LCPD.inputSimulator'!
2012-07-21 17:32:11 - ...found script 'FirstResponse.LCPD.Start'!
2012-07-21 17:32:11 - ...found script 'FirstResponse.LCPD.Various'!
2012-07-21 17:32:11 - DONE! 21 valid scripts found!
2012-07-21 17:32:11 - STARTING SCRIPTS...
2012-07-21 17:32:11 - Error during GetPhoneNumber (Phone checks will be disabled):
System.Exception: Accessing Globals failed! Invalid Memory Address!
at unmanaged.MemoryAccess.GetGlobalAddress(Int32 index)
at unmanaged.MemoryAccess.GetPhoneNumber()
at GTA.NetHook.CheckPhone()
2012-07-21 17:32:11 - ...successfully started script 'FirstResponse.LCPD.Various'!
2012-07-21 17:32:11 - ...successfully started script 'FirstResponse.LCPD.Start'!
2012-07-21 17:32:11 - ...successfully started script 'FirstResponse.LCPD.inputSimulator'!
2012-07-21 17:32:11 - ...successfully started script 'FirstResponse.LCPD.Partner'!
2012-07-21 17:32:11 - ...successfully started script 'FirstResponse.LCPD.Functions'!
2012-07-21 17:32:11 - ...successfully started script 'FirstResponse.LCPD.Flashlight'!
2012-07-21 17:32:11 - ...successfully started script 'FirstResponse.LCPD.Debug'!
2012-07-21 17:32:11 - ...successfully started script 'FirstResponse.LCPD.Actions'!
2012-07-21 17:32:11 - ...successfully started script 'FirstResponse.LCPD.PullOver'!
2012-07-21 17:32:11 - ...successfully started script 'FirstResponse.LCPD.Frisk'!
2012-07-21 17:32:11 - ...successfully started script 'FirstResponse.LCPD.Disarm'!
2012-07-21 17:32:11 - ...successfully started script 'FirstResponse.LCPD.Carboot'!
2012-07-21 17:32:11 - ...successfully started script 'FirstResponse.LCMD.Functions'!
2012-07-21 17:32:11 - ...successfully started script 'FirstResponse.LCMD.Main'!
2012-07-21 17:32:11 - ...successfully started script 'FirstResponse.TextDraw'!
2012-07-21 17:32:11 - ...successfully started script 'FirstResponse.Hardcore'!
2012-07-21 17:32:11 - ...successfully started script 'FirstResponse.DeletionList'!
2012-07-21 17:32:11 - ...successfully started script 'FirstResponse.Debugging'!
2012-07-21 17:32:11 - ...successfully started script 'CSharp.Engine.Core'!
2012-07-21 17:32:11 - ...successfully started script 'FirstResponse.Main.Start'!
2012-07-21 17:32:11 - ...successfully started script 'FirstResponse.Main.EmergencyLights'!
2012-07-21 18:00:52 - Direct3D device lost!
2012-07-21 18:00:52 - SCRIPTS TERMINATED!
===============END .NET SCRIPTHOOK LOG===============
End of *SIGNED* LCPD First Response Issue Report
Digital signature: wB4VErFWpovrQzjJSVgM3Q==