Frames are made with compensation for long legs already built into them. (seat tube angle)
Since the compensation is already built into the system you can't go compensate again by lengthening the crankarm.
If you try try to put a long crank on a factory frame you'll end up moving the seat forward (it will be forward and higher). You can only get away with so much of this with a slack seat tube angle.