譬如The cylinders shall be secured with triangularwooden chocks to prevent rolling.这句话是否错误的?

应该改成prevent them rolling.或者是把rolling改成名词prevent the roll.

The cylindersshall be secured with triangular wooden chocks to prevent rolling.

本句没错。作为及物动词,prevent 可以直接跟名词作宾语。假如必要,也可以用动名词作宾语。至于 prevent sb. doing sth. 只不过其使用方法之一。假如必须要用这个句式,应用反身代词(由于句子主语和宾语同为一物):prevent themselves rolling. 这个结构其实是 “动名词复合结构” 作宾语,只不过在rolling 前加了逻辑主语而已,依据句意用反身代词已经多余,去掉逻辑主语,就是纯粹的动名词了。

We are takingsteps to prevent pollution. (名词)

大家正在采取手段预防污染。

《牛津高阶英汉双解词典》

Precautions had tobe taken to prevent pilfering. (动名词)

应采取预防手段来防止盗窃。

《柯林斯英汉双解大词典》