I would argue that laws really cannot prevent violence against women. Laws cannot prevent theft. They cannot prevent murder. Why should they be able to prevent all violence against women? Laws can only influence us. They cannot actually control us.
Laws can help reduce violence against women, but they cannot eliminate it. Laws can help in two ways. First, they can scare people. People who might otherwise commit violence might think twice about it if there are draconian punishments involved. Second, laws can make people think and can help to create a different atmosphere in a society. If a society has strong laws about violence against women, it sends a message to people that women are valuable members of society. If, by contrast, a society does not have such laws or chooses not to enforce them, it sends the message that women are not very valuable and do not deserve good treatment.
It is likely that violence against women can never be fully eradicated from a society. It seems that the strong have an innate desire to dominate the weak. We see this happen where powerful people dominate less politically or social powerful people. We also see it in the case of men, who are physically more powerful than women. Some men choose to use their physical power to dominate and abuse women. Laws can help make this less acceptable in a society, but they cannot (it seems) erase this urge and therefore cannot completely prevent violence against women.