团结无法将以太币从合同薄雾浏览器中撤出

时间:2018-12-09 14:42:34

标签: ethereum solidity smartcontracts contract etherscan

我正在尝试将Ether存储在合同中,并在我调用paypackEther()函数时将其退还。在带有JavaScript VM的Remix IDE内,它可以完美运行,但是当我在Rinkeby或Mist的Ropsten上执行它时,我无法获得存储的以太币。这让我发疯...

用Mist调用函数“ paybackEther”时,Input Data只是“ 0x”(以太扫描说)。 我在多台计算机上进行了尝试,但结果保持不变,因此我真的确定它必须对我的代码进行处理。

其他用于接收以太币的代码也可以正常工作,例如https://github.com/PaulRBerg/contractz/blob/master/contracts/Escrow.sol#L42 (合同破坏,功能破坏)

我怎么了?

pragma solidity ^0.4.24;

contract SimpleContract {


    function () public payable  {
    }

    constructor() payable  public {
    }

    function paybackEther() public  {
        selfdestruct(msg.sender);
    }

}

合同地址为:0x0b5933fd3D33F7d79C0e19e12A070fafA053Df57 https://rinkeby.etherscan.io/address/0x0b5933fd3d33f7d79c0e19e12a070fafa053df57

您还可以在那里查看我的所有交易。我发布了代码。

预先感谢:)

1 个答案:

答案 0 :(得分:0)

要调试此问题,请创建以下方法,然后查看返回的金额。我怀疑,该金额是否首先使您的余额剩下(或者您可能以wei而不是以太币发送金额)。

    function getBalanceOfContract() public view returns (uint){
       return address(this).balance;
    }