<FLAME>Photoshop development</FLAME>

doh, you are correct, much better!

Yeah seriously, any time I have to write some plugin for photoshop I just want to die a little bit inside. It is absolutely horrific in every way imaginable.

I am trying to get ZeroMQ to work with Photoshop’s version of Node.

I was able to download ZeroMQ, the Python bindings with PIP, and the NodeJs Package with NPM, and get them to talk to each other, BUT, I can’t get ZeroMQ to work with Photoshop’s version of Node. I get this message:


Uncaught Error: %1 is not a valid Win32 application.
C:\Program Files (x86)\Common Files\Adobe\CEP\extensions\HelloWorld
ode_modules\zmq\build\Release\zmq.node", source: C:\Program Files (x86)\Common Files\Adobe\CEP\extensions\HelloWorld
ode_modules\zmq
ode_modules\bindings\bindings.js (83)

I am running 64 bit Photoshop CC 2014, and I installed the 64 bit version of ZeroMQ. Googling the error results in various advice around compile settings, but I was hoping to avoid any real work… For what it’s worth, the latest version of Node I installed on the system is v0.12.1, and Photoshop’s version of Node is v0.10.3.

Photoshop doesn’t come with NPM, so I tried the advice from earlier in this thread and just copied over NPM that came with Node and pasted it into Photoshop’s application folder so I could install ZMQ into photoshop’s folder.

Some additional data.

If I run NOde.exe from the PS app folder, and type


var zmq = require("zmq");

I get this error message:


Error: The specified procedure could not be found.
C:\Program Files\Adobe\Adobe Photoshop CC 2014
ode_modules\zmq\build\Release\zmq.node
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at bindings (C:\Program Files\Adobe\Adobe Photoshop CC 2014
ode_modules\zmq
ode_modules\bindings\bindings.js:76:44)
    at Object.<anonymous> (C:\Program Files\Adobe\Adobe Photoshop CC 2014
ode_modules\zmq\lib\index.js:6:30)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)

The file “C:\Program Files\Adobe\Adobe Photoshop CC 2014
ode_modules\zmq\build\Release\zmq.node” does exist at that location…

Somebody should c+p this whole thread to adobe so they know what we think of their extension api

anyone tried to use the Socket object within an Extension?
The Socket Object is described here: http://download.macromedia.com/pub/developer/aftereffects/scripting/JavaScript-Tools-Guide-CC.pdf on page 194.

I tried to use it within a Panel, but I get:

"Uncaught ReferenceError: Socket is not defined",

and

"Uncaught Error: Cannot find module 'Socket'",

errors…

thats for use within photoshop from a jsx file. it blocks the entire app while trying to listen so theres no way to just have it sit there and send/recv messages while the user works

ah, well I ended up using the “net” node js package, and now I have a simple Python Server sending and receiving data over TCP with my Extension!
YAY!

http://www.hacksparrow.com/tcp-socket-programming-in-node-js.html

Still, it would be nice to be able to use ZeroMQ inside Photoshop, not sure why it doesn’t work :frowning:

Link from a TA colleague. A book on the black art of PS HTML dev is forthcomming!
http://www.davidebarranca.com/2015/12/update-on-html-panels-book-december-2015/

[QUOTE=planetboy;29326]Link from a TA colleague. A book on the black art of PS HTML dev is forthcomming!
http://www.davidebarranca.com/2015/12/update-on-html-panels-book-december-2015/[/QUOTE]

i recently stumbled across his website. it has a bunch of stuff we talk about here, but in one place and organized :slight_smile:

Heh, I just actually started looking at some PS plugin stuff today…after hating life for the first 3 hours of searching the net for usable code to just mess around with I have a plugin kinda half working.

I was actually just coming to the forums to check if people hated PS scripting as much as I do right now (good to know I’m not alone)