• Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
    Dedicated community for Japanese speakers
  • 한국 커뮤니티
    Dedicated community for Korean speakers
Exit
0

CC2018 Crashing With My Script

Participant ,
Nov 28, 2017 Nov 28, 2017

Copy link to clipboard

Copied

I am trying to run the Silver Efex Pro from a script. It used to work fine until I upgraded to CC2018 but now Photoshop crashes and I am baffled as to why.

Can anyone see any reason.

#target photoshop

cTID = function(s) { return app.charIDToTypeID(s); };

sTID = function(s) { return app.stringIDToTypeID(s); };

//==================== sep ==============

function sep() {

  // Silver Efex Pro 2

  function step1(enabled, withDialog) {

    if (enabled != undefined && !enabled)

      return;

    var dialogMode = (withDialog ? DialogModes.ALL : DialogModes.NO);

    executeAction(sTID('com.niksoftware.sep2.ps'), undefined, dialogMode);

  };

  step1();      // Silver Efex Pro 2

};

sep.main = function () {

  sep();

};

sep.main();

TOPICS
Actions and scripting

Views

1.7K

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe
People's Champ ,
Nov 28, 2017 Nov 28, 2017

Copy link to clipboard

Copied

Manual call of Silver Efex Pro from the Filter menu does not cause a crash?

Try instead

executeAction (sTID ('com.niksoftware.sep2.ps'), undefined, dialogMode);

use

executeAction (sTID ('com.niksoftware.sep2.ps'), new ActionDescriptor (), dialogMode);

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Participant ,
Nov 28, 2017 Nov 28, 2017

Copy link to clipboard

Copied

Using the following still crashes Photoshop. I just cannot see why this would be

  1. executeAction (sTID ('com.niksoftware.sep2.ps'), new ActionDescriptor (), dialogMode); 

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
People's Champ ,
Nov 29, 2017 Nov 29, 2017

Copy link to clipboard

Copied

You did not say, when you manually call a filter from the filters menu, does the crash happen or not?

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Participant ,
Nov 29, 2017 Nov 29, 2017

Copy link to clipboard

Copied

r-bin  wrote

You did not say, when you manually call a filter from the filters menu, does the crash happen or not?

Manually calling from the filter menu appears to work ok

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
People's Champ ,
Nov 29, 2017 Nov 29, 2017

Copy link to clipboard

Copied

OK.

Install, temporarily, the ScriptListener plugin.

https://helpx.adobe.com/photoshop/kb/downloadable-plugins-and-content.html

Launch photoshop. Execute the filter call, close the photoshop, delete the ScriptListener plugin. And post here the file from the Desktop - ScriptingListenerJS.log.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Participant ,
Nov 29, 2017 Nov 29, 2017

Copy link to clipboard

Copied

This is the result.

// =======================================================

var idinvokeCommand = stringIDToTypeID( "invokeCommand" );

    var desc22 = new ActionDescriptor();

    var idcommandID = stringIDToTypeID( "commandID" );

    desc22.putInteger( idcommandID, -474 );

    var idkcanDispatchWhileModal = stringIDToTypeID( "kcanDispatchWhileModal" );

    desc22.putBoolean( idkcanDispatchWhileModal, true );

executeAction( idinvokeCommand, desc22, DialogModes.NO );

// =======================================================

var idcom.niksoftware.septwo.ps = stringIDToTypeID( "com.niksoftware.sep2.ps" );

    var desc23 = new ActionDescriptor();

    var iddRes = charIDToTypeID( "dRes" );

    desc23.putInteger( iddRes, 5104 );

    var idconf = charIDToTypeID( "conf" );

    desc23.putString( idconf, """PFNpbHZlckVmZXhQcm8yX2ZpbHRlcj4KCTxmaWx0ZXIgbmFtZT0iTGVvbmlzRmlsdGVyIj4KCQk8cGFyYW1ldGVyIG5hbWU9ImZpbG1UeXBlc1ByZXNldHMiIHZhbHVlPSIwIiB2YWx1ZVR5cGU9ImludCIvPgoJCTxwYXJhbWV0ZXIgbmFtZT0iZmlsbVR5cGVzUHJlc2V0c19pbnRlcm4iIHZhbHVlPSIwIiB2YWx1ZVR5cGU9ImludCIvPgoJCTxwYXJhbWV0ZXIgbmFtZT0idG9uaW5nUHJlc2V0cyIgdmFsdWU9IjEiIHZhbHVlVHlwZT0iaW50Ii8+CgkJPHBhcmFtZXRlciBuYW1lPSJ0b25pbmdQcmVzZXRzX2ludGVybiIgdmFsdWU9IjEiIHZhbHVlVHlwZT0iaW50Ii8+CgkJPHBhcmFtZXRlciBuYW1lPSJ2aWduZXR0ZVByZXNldHMiIHZhbHVlPSIwIiB2YWx1ZVR5cGU9ImludCIvPgoJCTxwYXJhbWV0ZXIgbmFtZT0idmlnbmV0dGVQcmVzZXRzX2ludGVybiIgdmFsdWU9IjAiIHZhbHVlVHlwZT0iaW50Ii8+CgkJPHBhcmFtZXRlciBuYW1lPSJidXJuRWRnZXNQcmVzZXRzIiB2YWx1ZT0iMCIgdmFsdWVUeXBlPSJpbnQiLz4KCQk8cGFyYW1ldGVyIG5hbWU9ImJ1cm5FZGdlc1ByZXNldHNfaW50ZXJuIiB2YWx1ZT0iMCIgdmFsdWVUeXBlPSJpbnQiLz4KCQk8cGFyYW1ldGVyIG5hbWU9ImJvcmRlclR5cGUiIHZhbHVlPSIwIiB2YWx1ZVR5cGU9ImludCIvPgoJCTxwYXJhbWV0ZXIgbmFtZT0iZ2xvYmFsQnJpZ2h0bmVzcyIgdmFsdWU9IjAiIHZhbHVlVHlwZT0iZmxvYXQiLz4KCQk8cGFyYW1ldGVyIG5hbWU9ImhpQnJpZ2h0bmVzcyIgdmFsdWU9IjAiIHZhbHVlVHlwZT0iZmxvYXQiLz4KCQk8cGFyYW1ldGVyIG5hbWU9Im1lZEJyaWdodG5lc3MiIHZhbHVlPSIwIiB2YWx1ZVR5cGU9ImZsb2F0Ii8+CgkJPHBhcmFtZXRlciBuYW1lPSJsb0JyaWdodG5lc3MiIHZhbHVlPSIwIiB2YWx1ZVR5cGU9ImZsb2F0Ii8+CgkJPHBhcmFtZXRlciBuYW1lPSJhZGFwdGl2ZUJyaWdodG5lc3MiIHZhbHVlPSIwIiB2YWx1ZVR5cGU9ImZsb2F0Ii8+CgkJPHBhcmFtZXRlciBuYW1lPSJnbG9iYWxDb250cmFzdCIgdmFsdWU9IjAiIHZhbHVlVHlwZT0iZmxvYXQiLz4KCQk8cGFyYW1ldGVyIG5hbWU9InNvZnRDb250cmFzdCIgdmFsdWU9IjAiIHZhbHVlVHlwZT0iZmxvYXQiLz4KCQk8cGFyYW1ldGVyIG5hbWU9ImFkYXB0aXZlV1AiIHZhbHVlPSIwIiB2YWx1ZVR5cGU9ImZsb2F0Ii8+CgkJPHBhcmFtZXRlciBuYW1lPSJhZGFwdGl2ZUJQIiB2YWx1ZT0iMCIgdmFsdWVUeXBlPSJmbG9hdCIvPgoJCTxwYXJhbWV0ZXIgbmFtZT0iZ2xvYmFsU3RydWN0dXJlIiB2YWx1ZT0iMCIgdmFsdWVUeXBlPSJmbG9hdCIvPgoJCTxwYXJhbWV0ZXIgbmFtZT0iaGlTdHJ1Y3R1cmUiIHZhbHVlPSIwIiB2YWx1ZVR5cGU9ImZsb2F0Ii8+CgkJPHBhcmFtZXRlciBuYW1lPSJtZWRTdHJ1Y3R1cmUiIHZhbHVlPSIwIiB2YWx1ZVR5cGU9ImZsb2F0Ii8+CgkJPHBhcmFtZXRlciBuYW1lPSJsb1N0cnVjdHVyZSIgdmFsdWU9IjAiIHZhbHVlVHlwZT0iZmxvYXQiLz4KCQk8cGFyYW1ldGVyIG5hbWU9ImZpbmVTdHJ1Y3R1cmUiIHZhbHVlPSIwIiB2YWx1ZVR5cGU9ImZsb2F0Ii8+CgkJPHBhcmFtZXRlciBuYW1lPSJwcm90ZWN0U2hhZG93cyIgdmFsdWU9IjAiIHZhbHVlVHlwZT0iZmxvYXQiLz4KCQk8cGFyYW1ldGVyIG5hbWU9InByb3RlY3RIaWdobGlnaHRzIiB2YWx1ZT0iMCIgdmFsdWVUeXBlPSJmbG9hdCIvPgoJCTxwYXJhbWV0ZXIgbmFtZT0iY29sb3JGaWx0ZXJIdWUiIHZhbHVlPSIwIiB2YWx1ZVR5cGU9ImZsb2F0Ii8+CgkJPHBhcmFtZXRlciBuYW1lPSJjb2xvckZpbHRlclN0cmVuZ3RoIiB2YWx1ZT0iMCIgdmFsdWVUeXBlPSJmbG9hdCIvPgoJCTxwYXJhbWV0ZXIgbmFtZT0ic2Vuc1IiIHZhbHVlPSIwIiB2YWx1ZVR5cGU9ImZsb2F0Ii8+CgkJPHBhcmFtZXRlciBuYW1lPSJzZW5zWWUiIHZhbHVlPSIwIiB2YWx1ZVR5cGU9ImZsb2F0Ii8+CgkJPHBhcmFtZXRlciBuYW1lPSJzZW5zRyIgdmFsdWU9IjAiIHZhbHVlVHlwZT0iZmxvYXQiLz4KCQk8cGFyYW1ldGVyIG5hbWU9InNlbnNDeSIgdmFsdWU9IjAiIHZhbHVlVHlwZT0iZmxvYXQiLz4KCQk8cGFyYW1ldGVyIG5hbWU9InNlbnNCIiB2YWx1ZT0iMCIgdmFsdWVUeXBlPSJmbG9hdCIvPgoJCTxwYXJhbWV0ZXIgbmFtZT0ic2Vuc01nIiB2YWx1ZT0iMCIgdmFsdWVUeXBlPSJmbG9hdCIvPgoJCTxwYXJhbWV0ZXIgbmFtZT0idmlnU3RyZW5ndGgiIHZhbHVlPSIwIiB2YWx1ZVR5cGU9ImZsb2F0Ii8+CgkJPHBhcmFtZXRlciBuYW1lPSJ2aWdTaGFwZSIgdmFsdWU9IjIiIHZhbHVlVHlwZT0iZmxvYXQiLz4KCQk8cGFyYW1ldGVyIG5hbWU9InZpZ1NpemUiIHZhbHVlPSI1MCIgdmFsdWVUeXBlPSJmbG9hdCIvPgoJCTxwYXJhbWV0ZXIgbmFtZT0idmlnbmV0dGVDZW50ZXJYIiB2YWx1ZT0iMC41IiB2YWx1ZVR5cGU9ImZsb2F0Ii8+CgkJPHBhcmFtZXRlciBuYW1lPSJ2aWduZXR0ZUNlbnRlclkiIHZhbHVlPSIwLjUiIHZhbHVlVHlwZT0iZmxvYXQiLz4KCQk8cGFyYW1ldGVyIG5hbWU9ImdyYWluU2xpZGVyU3RyZW5ndGgiIHZhbHVlPSI1MDAiIHZhbHVlVHlwZT0iZmxvYXQiLz4KCQk8cGFyYW1ldGVyIG5hbWU9ImdyYWluU2xpZGVyU29mdG5lc3MiIHZhbHVlPSIwIiB2YWx1ZVR5cGU9ImZsb2F0Ii8+CgkJPHBhcmFtZXRlciBuYW1lPSJ0b25lSHVlTG93IiB2YWx1ZT0iMzAiIHZhbHVlVHlwZT0iZmxvYXQiLz4KCQk8cGFyYW1ldGVyIG5hbWU9InRvbmVIdWVIaWdoIiB2YWx1ZT0iNTAiIHZhbHVlVHlwZT0iZmxvYXQiLz4KCQk8cGFyYW1ldGVyIG5hbWU9InRvbmVIdWVCYWxhbmNlIiB2YWx1ZT0iMCIgdmFsdWVUeXBlPSJmbG9hdCIvPgoJCTxwYXJhbWV0ZXIgbmFtZT0idG9uZVN0cmVuZ3RoSGlnaFJlbGF0aXZlIiB2YWx1ZT0iMCIgdmFsdWVUeXBlPSJmbG9hdCIvPgoJCTxwYXJhbWV0ZXIgbmFtZT0idG9uZVN0cmVuZ3RoTG93UmVsYXRpdmUiIHZhbHVlPSIxIiB2YWx1ZVR5cGU9ImZsb2F0Ii8+CgkJPHBhcmFtZXRlciBuYW1lPSJ0b25lU3RyZW5ndGhIaWdoIiB2YWx1ZT0iMCIgdmFsdWVUeXBlPSJmbG9hdCIvPgoJCTxwYXJhbWV0ZXIgbmFtZT0idG9uZVN0cmVuZ3RoTG93IiB2YWx1ZT0iMCIgdmFsdWVUeXBlPSJmbG9hdCIvPgoJCTxwYXJhbWV0ZXIgbmFtZT0idG9uaW5nU3RyZW5ndGgiIHZhbHVlPSIwIiB2YWx1ZVR5cGU9ImZsb2F0Ii8+CgkJPHBhcmFtZXRlciBuYW1lPSJiZVN0cmVuZ3RoTGVmdCIgdmFsdWU9IjAiIHZhbHVlVHlwZT0iZmxvYXQiLz4KCQk8cGFyYW1ldGVyIG5hbWU9ImJlU3RyZW5ndGhSaWdodCIgdmFsdWU9IjAiIHZhbHVlVHlwZT0iZmxvYXQiLz4KCQk8cGFyYW1ldGVyIG5hbWU9ImJlU3RyZW5ndGhUb3AiIHZhbHVlPSIwIiB2YWx1ZVR5cGU9ImZsb2F0Ii8+CgkJPHBhcmFtZXRlciBuYW1lPSJiZVN0cmVuZ3RoQm90dG9tIiB2YWx1ZT0iMCIgdmFsdWVUeXBlPSJmbG9hdCIvPgoJCTxwYXJhbWV0ZXIgbmFtZT0iYmVTaXplTGVmdCIgdmFsdWU9IjAiIHZhbHVlVHlwZT0iZmxvYXQiLz4KCQk8cGFyYW1ldGVyIG5hbWU9ImJlU2l6ZVJpZ2h0IiB2YWx1ZT0iMCIgdmFsdWVUeXBlPSJmbG9hdCIvPgoJCTxwYXJhbWV0ZXIgbmFtZT0iYmVTaXplVG9wIiB2YWx1ZT0iMCIgdmFsdWVUeXBlPSJmbG9hdCIvPgoJCTxwYXJhbWV0ZXIgbmFtZT0iYmVTaXplQm90dG9tIiB2YWx1ZT0iMCIgdmFsdWVUeXBlPSJmbG9hdCIvPgoJCTxwYXJhbWV0ZXIgbmFtZT0iYmVUcmFuc2l0aW9uTGVmdCIgdmFsdWU9IjAiIHZhbHVlVHlwZT0iZmxvYXQiLz4KCQk8cGFyYW1ldGVyIG5hbWU9ImJlVHJhbnNpdGlvblJpZ2h0IiB2YWx1ZT0iMCIgdmFsdWVUeXBlPSJmbG9hdCIvPgoJCTxwYXJhbWV0ZXIgbmFtZT0iYmVUcmFuc2l0aW9uVG9wIiB2YWx1ZT0iMCIgdmFsdWVUeXBlPSJmbG9hdCIvPgoJCTxwYXJhbWV0ZXIgbmFtZT0iYmVUcmFuc2l0aW9uQm90dG9tIiB2YWx1ZT0iMCIgdmFsdWVUeXBlPSJmbG9hdCIvPgoJCTxwYXJhbWV0ZXIgbmFtZT0iYm9yZGVyU2l6ZSIgdmFsdWU9IjAiIHZhbHVlVHlwZT0iZmxvYXQiLz4KCQk8cGFyYW1ldGVyIG5hbWU9ImJvcmRlclNwcmVhZCIgdmFsdWU9IjAiIHZhbHVlVHlwZT0iZmxvYXQiLz4KCQk8cGFyYW1ldGVyIG5hbWU9ImJvcmRlclJhbmRvbSIgdmFsdWU9IjAiIHZhbHVlVHlwZT0iZmxvYXQiLz4KCQk8cGFyYW1ldGVyIG5hbWU9ImJvcmRlckdydW5nZSIgdmFsdWU9IjAiIHZhbHVlVHlwZT0iZmxvYXQiLz4KCQk8cGFyYW1ldGVyIG5hbWU9Im1haW5Db250cm9sc0VuYWJsZWQiIHZhbHVlPSIxIiB2YWx1ZVR5cGU9ImludCIvPgoJCTxwYXJhbWV0ZXIgbmFtZT0iY29udHJvbFBvaW50TGlzdEVuYWJsZWQiIHZhbHVlPSIxIiB2YWx1ZVR5cGU9ImludCIvPgoJCTxwYXJhbWV0ZXIgbmFtZT0iY29sb3JGaWx0ZXJTZWN0aW9uRW5hYmxlZCIgdmFsdWU9IjEiIHZhbHVlVHlwZT0iaW50Ii8+CgkJPHBhcmFtZXRlciBuYW1lPSJmaWxtVHlwZXNTZWN0aW9uRW5hYmxlZCIgdmFsdWU9IjEiIHZhbHVlVHlwZT0iaW50Ii8+CgkJPHBhcmFtZXRlciBuYW1lPSJzdHlsaXppbmdTZWN0aW9uRW5hYmxlZCIgdmFsdWU9IjEiIHZhbHVlVHlwZT0iaW50Ii8+CgkJPHBhcmFtZXRlciBuYW1lPSJpbmtpbmdEZWFrdGl2YXRlZEZvclNhdmluZyIgdmFsdWU9IjAiIHZhbHVlVHlwZT0iaW50Ii8+CgkJPHBhcmFtZXRlciBuYW1lPSJsYWNkYXRhIiB2YWx1ZT0nJmx0O0xhY19zZXJpYWxpemF0aW9uJmd0OwoJJmx0O2tleSBuYW1lPSJsb3dOb2RlWCIgdmFsdWU9IjAiLyZndDsKCSZsdDtrZXkgbmFtZT0ibG93Tm9kZVkiIHZhbHVlPSIwIi8mZ3Q7CgkmbHQ7a2V5IG5hbWU9ImhpZ2hOb2RlWCIgdmFsdWU9IjEiLyZndDsKCSZsdDtrZXkgbmFtZT0iaGlnaE5vZGVZIiB2YWx1ZT0iMSIvJmd0OwoJJmx0O2tleSBuYW1lPSJnYW1tYSIgdmFsdWU9IjAiLyZndDsKCSZsdDtrZXkgbmFtZT0iaW50Tm9kZUNvdW50IiB2YWx1ZT0iMCIvJmd0OwombHQ7L0xhY19zZXJpYWxpemF0aW9uJmd0OwonIHZhbHVlVHlwZT0iaW50Ii8+Cgk8L2ZpbHRlcj4KPC9TaWx2ZXJFZmV4UHJvMl9maWx0ZXI+CgoA""" );

executeAction( idcom.niksoftware.septwo.ps, desc23, DialogModes.NO );

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
People's Champ ,
Nov 29, 2017 Nov 29, 2017

Copy link to clipboard

Copied

Try to execute script

    var d = new ActionDescriptor();

    d.putInteger( charIDToTypeID( "dRes" ), 5104 );

    d.putString( charIDToTypeID( "conf" ), "");

    executeAction( stringIDToTypeID( "com.niksoftware.sep2.ps" ), d, DialogModes.ALL );

If ok then try

    var d = new ActionDescriptor();

    d.putString( charIDToTypeID( "conf" ), "");

    executeAction( stringIDToTypeID( "com.niksoftware.sep2.ps" ), d, DialogModes.ALL );

If ok then replace in two scripts DialogModes.ALL to DialogModes.NO and run both scripts again

Report the results please.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Participant ,
Nov 29, 2017 Nov 29, 2017

Copy link to clipboard

Copied

var d = new ActionDescriptor();

    d.putInteger( charIDToTypeID( "dRes" ), 5104 );

    d.putString( charIDToTypeID( "conf" ), "");

    executeAction( stringIDToTypeID( "com.niksoftware.sep2.ps" ), d, DialogModes.ALL );

This loads Silver Efex but then causes Photoshop to Stop Responding, only way to close the app is to force quit

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
People's Champ ,
Nov 29, 2017 Nov 29, 2017

Copy link to clipboard

Copied

I can not test anything since I do not have this filter.
In extreme cases, you can try to use that long line

d.putString (charIDToTypeID ("conf"), "... very lo ng strin ...


But it will probably call a filter with some predefined parameters, which is probably not desirable. And which can be dependent on the parameter of the current layer, for example its dimensions.

It's strange that it worked in CC2017. Is the version of the plugin the same?

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Advocate ,
Nov 29, 2017 Nov 29, 2017

Copy link to clipboard

Copied

LATEST

I found this solution

see if it's fine for your case

https://www.youtube.com/watch?v=oPtBM81uzRc

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines