AtTiny45

@Ralf
Klar braucht man keinen Bootloader auf einem ATTiny.
Der einzige Sinn an "burn bootloader" ist, dass da erstmal die fuses gesetzt werden.
( Das macht "deine Kommandozeile von oben" leider nicht, wenn du damit

avrdude -c arduino -P COM9 -b 19200  -p attiny45 -U flash:w:main.hex:i

meinst )
Fuses direkt per Kommandozeile setzen geht zwar auch, man sollte sich dabei aber nicht vertippen, da man an einen "verfuseten" Controller evtl. nur schwer wieder dran kommt.

Aber eine signatur 000000 ist eher ein generelles (Verdrahtungs-) Problem

Diese Kommando sollte jedenfalls nicht mehr machen als die Signatur anzuzeigen
avrdude -P COM9 -p t45 -c arduino -v

Ein ATTiny45 sollte übrigens die Signatur 1e 92 06 haben.