Die Testrpc-Entzugsfunktion funktioniert nicht

Ich habe einen sehr einfachen Vertrag mit Auszahlungsfunktion.

contract PayTest {
function() public payable {
}

function withdraw() {
    msg.sender.transfer(4000000000 wei);
}

}

Wenn ich es in der JavaScript-VM versuche, funktioniert es. Aber wenn ich zu localhost wechsle und versuche, es mit Testrpc auszuführen, bekomme ich:

VM Exception while processing transaction: out of gas 

Ich kann Geth nicht ausführen, also muss ich mit TestRPC arbeiten. Aber das oben funktioniert nicht.

Danke für die Hilfe!

Antworten (1)

Zuerst stellen Sie den Vertrag bereit.

Dann senden Sie dem Vertrag etwas Geld. Bei testrpc werden die Konten mit 100 Ether aufgeladen und freigeschaltet, sodass Sie dann den Vertrag absenden können.

Der Vertrag wird funktionieren, wenn er Mittel zum Senden hat.

Ich hoffe es hilft.

Danke schön. Ich habe getan, was du gesagt hast, aber es funktioniert immer noch nicht. Nur um klarzustellen, wenn ich es in der Javascript-VM versuche und es dort ohne Fehler funktioniert, funktioniert es dann auch auf Mainnet oder auf jedem Testnet (wie Ropsten)? Es wäre immer noch großartig, wenn ich es in meinem Privatenet zum Laufen bringen könnte.
Im Allgemeinen ja, und der Vertrag sieht so aus, als ob er funktionieren sollte. Das häufigste Versehen besteht darin, zu vergessen, das Konto wie getherforderlich zu entsperren, weil testrpc/ ganache-clinicht auf diesem Schritt besteht. Schauen Sie hier nach einer Lösung für ein kleines Ärgernis - die Freischaltung läuft ziemlich schnell ab. Vielleicht hilft das. ethereum.stackexchange.com/questions/10160/…
Nein, das liegt daran, dass Geth im Allgemeinen nicht für mich funktioniert. Das erste ist, dass der Miner erst nach einigen Minuten gestartet wird, und als Nächstes kommt er in der Konsole, wenn ich einen Vertrag bereitstelle, aber auf Remix steht „1 ausstehende Transaktion“, was sich nie ändert. Kann nicht mehr mit Geth arbeiten.