¿Cómo verificar un contrato que tiene argumentos de constructor?

Este es un contrato que requiere un argumento para ser desplegado.

El Nombre del contrato es "Activo". El compilador utilizado es "Compiler 0.4.16+commit.d7661dd9.Emscripten.clang" y la optimización estaba deshabilitada.

Para validarlo esta es la herramienta utilizada.

Otros contratos sin argumentos de constructor se verificaron con éxito, pero este se queja así:

Error! Unable to verify source code
Missing Constructor Arguments for function Asset(address _SCIssuers)

Parece que el validador necesita saber una información codificada en ABI sobre los argumentos del constructor como se indica aquí .

Intenté codificar Method ID + primer parámetro, pero tuve algunas dificultades. Para implementar el contrato que utilicé:

Create("0x22bc795b5b8154fe619724e7cb1f4b931cd39c11")

Entonces, el primer parámetro debe ser 0x22bc795b5b8154fe619724e7cb1f4b931cd39c11.

El problema es encontrar el ID del método constructor. El IDE en línea utilizado para implementar no me dice esa información. ¿Cómo puedo encontrarlo?

Por cierto, la función constructora es esta:

// Constructor
function Asset(address _SCIssuers) {
    SCIssuers = _SCIssuers;
}

¿Alguna ayuda? ¡Gracias!

Referencias:

Bueno, intenté usar 00000000000000000000000022bc795b5b8154fe619724e7cb1f4b931cd39c11 y funcionó. ropsten.etherscan.io/address/… pero ¿por qué? ¿Por qué todos esos ceros iniciales?
Es así porque todos los parámetros deben rellenarse a 32 bytes. He usado github.com/ethereumjs/ethereumjs-abi para codificar parámetros.
¿Usted me podría ayudar por favor? Problema similar ethereum.stackexchange.com/questions/41015/…
Acabo de enviar una respuesta ahora mismo.

Respuestas (1)

Debe codificar correctamente los argumentos del constructor con ABI. Puede hacerlo fácilmente con la herramienta en línea https://abi.hashex.org . Simplemente pegue abi para analizar automáticamente los tipos de parámetros del constructor o agréguelos manualmente.