2016-11-22 9 views
1

私には1.5.2があり、Mist-linux64-0-8-7でtestnetで作業しています。私は単純な問題で、私はいくつかのエーテル(値)を私の契約に何か関数を呼び出すことによって送信しようとしました。例えば、でもこのダミー関数が非ゼロ値では動作しませんが、ゼロ値で正常に動作します :Ethereumスマートコントラクトに値を送信する際にエラーが発生しました

私はメッセージでミストに警告が表示されていることをここに驚くべきことである何
function t() returns (uint){ 
    return 1; 
} 

は、「それは、このトランザクションを思わそれを提出すれば、あなたが送るすべてのガスを消費する可能性があります。 これは私が提供するガス量には依存しません。 私が50万のガスを入れても、取引は完了していないようです。 https://testnet.etherscan.io/tx/0x3206118530079d1b416dc649c6f0a89283f9457e9189f259b3429cf0c6a998d0

メッセージ

警告があります:あなたがここにその結果を見ることができます

!契約実行中にエラーが発生しました[バッドジャンプ 宛先]

異なる契約で異なる機能を実行しようとしました。私はgethコンソールから直接sendTransaction機能を使用していましたが、まだ動作させることはできません。 誰かに似たような問題があるかどうかわかりませんでした。あなたが何か考えているなら、私を助けてください。

答えて

2

Solidity 0.4 onwards:

からエーテルを受信したい機能が新たに支払わ 修飾子(そうでない場合は、彼らが投げる)を指定する必要があります。

throw consumes all gasですので、function t() payable returns (uint)を使用してください。

関連する問題