De hecho, mi socio creó un contrato inteligente que puede crear un nuevo contrato inteligente y enviar los ingresos. Soy bastante nuevo en Solidity y no puedo encontrar una manera de modificar el contrato inteligente para aceptar ETH del remitente, almacenarlo o enviarlo directamente al propietario del contrato inteligente. Aquí está el código, la ayuda será apreciada!
pragma solidity ^0.4.0;
contract EtherTransferTo {
function () public payable {
}
function getBalance() public returns (uint) {
return address(this).balance;
}
}
contract EtherTransferFrom {
EtherTransferTo private _instance;
function EtherTransferFrom() public {
// _instance = EtherTransferTo(address(this));
_instance = new EtherTransferTo();
}
function getBalance() public returns (uint) {
return address(this).balance;
}
function getBalanceOfInstance() public returns (uint) {
//return address(_instance).balance;
return _instance.getBalance();
}
function () public payable {
//msg.sender.send(msg.value);
address(_instance).send(msg.value);
}
}
Si desea realizar un contrato que simplemente reenvía cualquier ETH al propietario del contrato, deberá:
Aquí hay una muestra realmente simple para comenzar (no probada y no lista para la producción):
pragma solidity 0.4.24;
contract EthForward {
address _owner;
constructor() public {
_owner = msg.sender;
}
function() public payable {
_owner.transfer(msg.value);
}
}
Este contrato aprovecha dos conceptos clave:
Debería dedicar tiempo a aprender más sobre solidez a través de documentación oficial y tutoriales como Cryptozombies.
Saumya Brata Dutt
shawn tabrizi