Bitcoin Forum
November 09, 2024, 05:23:25 AM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: help with achow101-payment-proto-interface  (Read 198 times)
abeandund (OP)
Member
**
Offline Offline

Activity: 124
Merit: 15


View Profile
January 15, 2018, 11:56:26 PM
 #1

Do I need to install python to run achow101's?
No, unless you want to use it from source. There are binaries available here: https://github.com/achow101/payment-proto-interface/releases/tag/v1.0.1

I downloaded btcpp-cli-win64 this time.  Norton didn't like and removed, so restored and gave it trust in file insight.  Double clicked it and launched fine.  Created invoice for bitpay, and on invoice clicked copy to reveal the uri.  Copied uri from invoice, but wouldn't let me paste into the tool---so typed it.  When i hit enter the tool closed. 

That is the furthest i've gotten on any of my attempts.  I didn't get error msg, or crash report, but if you tell me where to look, i'll find it then post.
achow101
Staff
Legendary
*
Offline Offline

Activity: 3542
Merit: 6886


Just writing some code


View Profile WWW
January 16, 2018, 01:58:28 AM
 #2

I downloaded btcpp-cli-win64 this time.  Norton didn't like and removed, so restored and gave it trust in file insight.  Double clicked it and launched fine.  Created invoice for bitpay, and on invoice clicked copy to reveal the uri.  Copied uri from invoice, but wouldn't let me paste into the tool---so typed it.  When i hit enter the tool closed.  

That is the furthest i've gotten on any of my attempts.  I didn't get error msg, or crash report, but if you tell me where to look, i'll find it then post.
Open up a command prompt or powershell in the folder containing btcpp-cli-win64 (with nothing in the folder selected, hold shift then right click, choose "Open command prompt" or "Open powershell"). Type btcpp-cli-win64 to run the program from there. Follow the instructions, and if it fails, post the output. There should be a python traceback if it fails.

abeandund (OP)
Member
**
Offline Offline

Activity: 124
Merit: 15


View Profile
January 16, 2018, 02:40:06 AM
 #3

C:\Users\@@@@@\Downloads\zip downloads\achow tool>btcpp-cli-win64
Bitcoin Payment Protocol Interface

Enter a Bitcoin URI:(edit= removed uri because it was still active and kept opening wallet if clicked)

Error: could not find paymentrequest_pb2.py. Create it with 'protoc --proto_path
=./ --python_out=./ paymentrequest.proto'

achow101
Staff
Legendary
*
Offline Offline

Activity: 3542
Merit: 6886


Just writing some code


View Profile WWW
January 16, 2018, 03:42:55 AM
 #4

Error: could not find paymentrequest_pb2.py. Create it with 'protoc --proto_path
=./ --python_out=./ paymentrequest.proto'
Oops, I screwed up the build. I uploaded new builds (replacing the old ones), try those.

abeandund (OP)
Member
**
Offline Offline

Activity: 124
Merit: 15


View Profile
January 16, 2018, 06:26:42 AM
 #5

Success:  I was able to launch by double clicking btcpp-cli-win64.  It closed on me a couple of times after typing in uri.  Launching from command line seems more stable for me and I am able to copy and paste to and from opening that way.  It did convert the uri to payment address, so success.  I appreciate the help

While I was at it and still on my windows 7 machine, I redownloaded btcpp-qt-win64.  It still doesn't work for me, but I did write down the error message:

This application failed to start because it could not find or load
the Qt platform plugin "windows"
in "".

I can work with I have, but would rather have it working on my windows 10 machine since that is where my Armory wallet is running.
I then went over to my windows 10 machine and tried btcpp-cli-win64 and this is the error I got:

btcpp-cli-win64.exe - Bad Image

C:\Users\@@@@@@\AppData\Local\Temp\_MEI77402\VCRUNTIME140.dll
is either not designed to run on Windows or it cointains an error.  Try
installing the program again using the original installation media or contact your system administrator or the software vendor or support.
Error Status 0xc000000d

achow101
Staff
Legendary
*
Offline Offline

Activity: 3542
Merit: 6886


Just writing some code


View Profile WWW
January 16, 2018, 06:53:01 AM
 #6

I can work with I have, but would rather have it working on my windows 10 machine since that is where my Armory wallet is running.
I then went over to my windows 10 machine and tried btcpp-cli-win64 and this is the error I got:

btcpp-cli-win64.exe - Bad Image

C:\Users\@@@@@@\AppData\Local\Temp\_MEI77402\VCRUNTIME140.dll
is either not designed to run on Windows or it cointains an error.  Try
installing the program again using the original installation media or contact your system administrator or the software vendor or support.
Error Status 0xc000000d
Try installing the Visual C++ Redistributable available here: https://www.microsoft.com/en-us/download/details.aspx?id=52685. That should hopefully add the VCRUNTIME140.dll it wants to your system.

abeandund (OP)
Member
**
Offline Offline

Activity: 124
Merit: 15


View Profile
January 16, 2018, 02:22:59 PM
 #7

Installed both vc_redist.x64&86 versions on windows 10 machine.  Same popup error when launching by double click and command line.  But when launching from command line, after closing the popup error message I get this in command line:

C:\Users\@@@@\Desktop>btcpp-cli-win64
Error loading Python DLL 'C:\Users\@@@@\AppData\local\Temp\_MEI14242\python36.dll'.
LoadLibrary:  The parameter is incorrect

achow101
Staff
Legendary
*
Offline Offline

Activity: 3542
Merit: 6886


Just writing some code


View Profile WWW
January 17, 2018, 01:03:20 AM
 #8

Installed both vc_redist.x64&86 versions on windows 10 machine.  Same popup error when launching by double click and command line.  But when launching from command line, after closing the popup error message I get this in command line:

C:\Users\@@@@\Desktop>btcpp-cli-win64
Error loading Python DLL 'C:\Users\@@@@\AppData\local\Temp\_MEI14242\python36.dll'.
LoadLibrary:  The parameter is incorrect
Yeah... I'm not sure what's wrong there. This is my first time using pyinstaller to generate binaries.

abeandund (OP)
Member
**
Offline Offline

Activity: 124
Merit: 15


View Profile
January 17, 2018, 04:38:42 AM
 #9

I really appreciate the help.  Thank you.  The tool works fine on windows 7 and I can manage by creating the payment invoice over there, use the tool to decode the payment address from the uri then email it to the windows 10 machine and complete the payment from armory.

If you give me the steps to build from source using python, I'll give that a whirl.  I am sure there are some armory users running windows 10 that could find it useful.  I am going to use the tool vs. modified url method.  It isn't a pressing matter at this time, but if you need a test subject to iron things out, i'm willing.  Not a programmer myself, but good direction follower.
achow101
Staff
Legendary
*
Offline Offline

Activity: 3542
Merit: 6886


Just writing some code


View Profile WWW
January 17, 2018, 04:59:31 AM
 #10

If you give me the steps to build from source using python, I'll give that a whirl.
To run from source, first download and install python from https://www.python.org/. There's a section where it says something about adding python to your PATH, make sure you choose that option.

Downlaod and extract protoc from https://github.com/google/protobuf/releases. There should be a file named protoc.exe in the bin folder.

Download the code from https://github.com/achow101/payment-proto-interface. Copy protoc.exe from the previous step into the folder containing the source code.

Open up a command prompt or powershell in the folder with the source code. Then run the following commands:
Code:
python setup.py install
protoc.exe --proto_path=./ --python_out=./ ./paymentrequest.proto

Then run the cli program using
Code:
python tui.py

or the gui program using
Code:
python gui.py

abeandund (OP)
Member
**
Offline Offline

Activity: 124
Merit: 15


View Profile
January 17, 2018, 07:06:07 AM
 #11

downloaded python, checked path, custom install and selected everything to make sure I got everything
downloaded source code and extracted then copied protoc.exe from bin into this folder (trusted protoc.exe with file insight)

opened powershell as admin



PS E:\Downloads\achow tool\payment-proto-interface-master> python setup.py install
running install
running bdist_egg
running egg_info
creating Bitcoin_Payment_Protocol_Interface.egg-info
writing Bitcoin_Payment_Protocol_Interface.egg-info\PKG-INFO
writing dependency_links to Bitcoin_Payment_Protocol_Interface.egg-info\dependency_links.txt
writing requirements to Bitcoin_Payment_Protocol_Interface.egg-info\requires.txt
writing top-level names to Bitcoin_Payment_Protocol_Interface.egg-info\top_level.txt
writing manifest file 'Bitcoin_Payment_Protocol_Interface.egg-info\SOURCES.txt'
reading manifest file 'Bitcoin_Payment_Protocol_Interface.egg-info\SOURCES.txt'
writing manifest file 'Bitcoin_Payment_Protocol_Interface.egg-info\SOURCES.txt'
installing library code to build\bdist.win32\egg
running install_lib
warning: install_lib: 'build\lib' does not exist -- no Python modules to install

creating build
creating build\bdist.win32
creating build\bdist.win32\egg
creating build\bdist.win32\egg\EGG-INFO
copying Bitcoin_Payment_Protocol_Interface.egg-info\PKG-INFO -> build\bdist.win32\egg\EGG-INFO
copying Bitcoin_Payment_Protocol_Interface.egg-info\SOURCES.txt -> build\bdist.win32\egg\EGG-INFO
copying Bitcoin_Payment_Protocol_Interface.egg-info\dependency_links.txt -> build\bdist.win32\egg\EGG-INFO
copying Bitcoin_Payment_Protocol_Interface.egg-info\requires.txt -> build\bdist.win32\egg\EGG-INFO
copying Bitcoin_Payment_Protocol_Interface.egg-info\top_level.txt -> build\bdist.win32\egg\EGG-INFO
zip_safe flag not set; analyzing archive contents...
creating dist
creating 'dist\Bitcoin_Payment_Protocol_Interface-0.1-py3.6.egg' and adding 'build\bdist.win32\egg' to it
removing 'build\bdist.win32\egg' (and everything under it)
Processing Bitcoin_Payment_Protocol_Interface-0.1-py3.6.egg
Removing c:\program files (x86)\python36-32\lib\site-packages\Bitcoin_Payment_Protocol_Interface-0.1-py3.6.egg
Copying Bitcoin_Payment_Protocol_Interface-0.1-py3.6.egg to c:\program files (x86)\python36-32\lib\site-packages
Bitcoin-Payment-Protocol-Interface 0.1 is already the active version in easy-install.pth

Installed c:\program files (x86)\python36-32\lib\site-packages\bitcoin_payment_protocol_interface-0.1-py3.6.egg
Processing dependencies for Bitcoin-Payment-Protocol-Interface==0.1
Searching for pyqt5
Reading https://pypi.python.org/simple/pyqt5/
No local packages or working download links found for pyqt5
error: Could not find suitable distribution for Requirement.parse('pyqt5')
PS E:\Downloads\achow tool\payment-proto-interface-master>
achow101
Staff
Legendary
*
Offline Offline

Activity: 3542
Merit: 6886


Just writing some code


View Profile WWW
January 17, 2018, 06:22:01 PM
 #12

error: Could not find suitable distribution for Requirement.parse('pyqt5')
Friggin pyqt.

Do
Code:
pip install pyqt5
and then run the other commands again.

abeandund (OP)
Member
**
Offline Offline

Activity: 124
Merit: 15


View Profile
January 17, 2018, 08:27:49 PM
 #13

https://pastebin.com/Lsa9NJRu

wasn't sure how the pastebin works, but i think this works? I got to protoc.exe --proto_path=./ --python_out=./ ./paymentrequest.proto where it came back with :

PS E:\Downloads\achow tool\payment-proto-interface-master> protoc.exe --proto_path=./ --python_out=./ ./paymentrequest.p
roto
protoc.exe : The term 'protoc.exe' is not recognized as the name of a cmdlet, function, script file, or operable
program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:1
+ protoc.exe --proto_path=./ --python_out=./ ./paymentrequest.proto
+ ~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (protoc.exe:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException
 
 
Suggestion [3,General]: The command protoc.exe was not found, but does exist in the current location. Windows PowerShell
 does not load commands from the current location by default. If you trust this command, instead type: ".\protoc.exe". S
ee "get-help about_Command_Precedence" for more details.
PS E:\Downloads\achow tool\payment-proto-interface-master>
achow101
Staff
Legendary
*
Offline Offline

Activity: 3542
Merit: 6886


Just writing some code


View Profile WWW
January 17, 2018, 09:08:35 PM
 #14

https://pastebin.com/Lsa9NJRu

wasn't sure how the pastebin works, but i think this works?
Yup, looks like it works.

I got to protoc.exe --proto_path=./ --python_out=./ ./paymentrequest.proto where it came back with :

PS E:\Downloads\achow tool\payment-proto-interface-master> protoc.exe --proto_path=./ --python_out=./ ./paymentrequest.p
roto
protoc.exe : The term 'protoc.exe' is not recognized as the name of a cmdlet, function, script file, or operable
program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:1
+ protoc.exe --proto_path=./ --python_out=./ ./paymentrequest.proto
+ ~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (protoc.exe:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException
 
 
Suggestion [3,General]: The command protoc.exe was not found, but does exist in the current location. Windows PowerShell
 does not load commands from the current location by default. If you trust this command, instead type: ".\protoc.exe". S
ee "get-help about_Command_Precedence" for more details.
PS E:\Downloads\achow tool\payment-proto-interface-master>
... Ok.

Try
Code:
./protoc.exe --proto_path=./ --python_out=./ ./paymentrequest.proto

abeandund (OP)
Member
**
Offline Offline

Activity: 124
Merit: 15


View Profile
January 17, 2018, 10:52:32 PM
 #15

That did the trick.  I was able to use both


Then run the cli program using
Code:
python tui.py

or the gui program using
Code:
python gui.py

I should have no problem using the tool now, thank you much.
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!