With X360 Controller Emulator for GTA 4 PC, you will be able to use your PS2/PS3/others Joypad on your PC.
Credits for emulator: Racer S and pkt-zer0.
First of all,download the Controller Emulator ordered by me (all credits has been given to owners, original readme after my english readme in each english text).
You'll find 6 folders:

Joypad PS2

Joypad PS3

Logitech Cordless Rumblepad 2

Trust Predator GM - 1500

Thrustmaster Dual Trigger 3 in 1 Rumble Force

Altri - Others

In each readme you'll find istructions for installation.

Buttons customization

In the flder "Altri - Others" you'll find default settings for Logitech Cordless Rumblepad 2.
In many cases, they won't fit to you joypad, so:

Copy files into GTA IV main folder as written in readme.

Start the game and write down which buttons are ok.

Then start to customize your xbox360cemu.ini.

XInputTest.exe in the archive is very useful and will help you with your customization.
First of all, your controller must be "recognized" by the emulator. So, be sure that Status is on "Connect" value.

If status is "Not connected":

maybe you have to install new drivers for your controller, or maybe the controller isn't supported by emulator.
Now, you are ready to start with testing. In this tutorial, I assume that my generic controller is a "PS2-like" one.
So, we try to press button. If the ID value in .ini is correct, button in the image become green as in the picture:

So, our ID value in the .ini is ok.
But is not so simple. Suppose that become green instaed of

Now we have a problem, values are inverted.
So, open the .ini and change values for the XBOX360 buttons and invert them:

Now, our joypad's button image is fixed, and we can exlude button from X360 image.
Repeat it for all buttons.
Then, two words on Analog sticks. If an analog is inverted, we could put a simple "-" before the value in the .ini file.
Example: We move ou controllers' right analog into right direction.
But in the image, the green dot will move itself into left direction: we have an inverted direction.

So we must put a "-" before ID value in the .ini for right analog X (X = horizontal, Y = vertical).

In case some buttons aren't recognized by the tester, you have to try some random values or pick them up from the others .ini in the archive. The only solution is to test them until you find the right value.
In the .ini you'll find some suggestions for each line.

For Playstation controller users, I suggest you also my "X360 to Ps2/PS3 Joypad Mod" that whill change buttons' images in information popup in upper left corner and 360 Joypad image in options. Istructions in the readme.
For any problem, ask here.