2012-10-09 2 views
1

Dans mon javascript, dans Windows 7, Photoshop CS2 & Photoshop CS5, il renvoie une erreur:Photoshop javascript Erreur d'enregistrement 8800

Error 8800: General Photoshop error occurred. This functionality may not be available in this version of Photoshop.
- Could not save a copy as "C:...\wcb-010B-11Y.jpg" because the file could not be found.
Line: 458
-> docRef.saveAs(saveFile, jpgSaveOptions, true, Extension.LOWERCASE);

Voici un résumé du code pour enregistrer l'image:

var selectedSaveDir = "~/Desktop/"; 
var sFileNamePreFix = "wcb-"; 
var docRef = app.activeDocument; 
var docName = app.activeDocument.name; 
var docNewName = docName.substr(0, docName.length - 4); // strip file extension 
var sNewDocName = sFileNamePreFix + docNewName + ".jpg" 
var sNewFileName = selectedSaveDir + sNewDocName; 
//alert("sNewFileName = " + sNewFileName);  // test to verify correct location 
var saveFile = new File(sNewFileName); 
jpgSaveOptions = new JPEGSaveOptions(); 
jpgSaveOptions.quality = 12; 
docRef.saveAs(saveFile, jpgSaveOptions, true, Extension.LOWERCASE); 

Sous Windows XP, ce script fonctionne très bien dans CS2 sans problème ... dans Windows 7, ce problème se produit uniquement avec CS2 ou CS5. Le problème semble être similaire à: Photoshop Javascript scripting saving and closing document Mais je ne connais pas son système d'exploitation.

J'ai ajouté la « alerte (» et a confirmé le dossier d'enregistrement & nom est correct et peut être sauvegardé, mais même question.

Pourrait-il être un problème dans Windows 7 UAC et comment avez-vous résoudre le problème que je l'ai éteint tous les paramètres de l'UAC (je pense que je l'ai fait correctement), mais il se produit encore

Toute aide

Répondre

0

Vous avez manqué?.? « var = docRef app.activeDocument; » (qui J'ai ajouté), mais à part cela, dans CS2, le script enregistre un fichier jpeg sur le bureau (wcb-text test.jpg) .C'est évident, mais avez-vous fait en sorte que l'image est aplatie o r ne contient aucune information qui ne peut pas être stockée dans un chemin de type jpeg par exemple.

Essayez de forcer un aplatissent avant d'enregistrer

//flatten the image 
docRef.flatten(); 

Une autre chose est d'essayer de sauver le fichier dans un autre répertoire. Je sais que les noms de fichiers longs (en particulier avec des espaces) peuvent causer des problèmes - je pense qu'il y a une limite de 300 caractères dans le chemin du fichier.