lancer photoshop et ouvrir une image

lancer photoshop et ouvrir une image - VB/VBA/VBS - Programmation

Marsh Posté le 25-03-2004 à 11:09:54    

Bonjour, je voudrais connaitre un moyen d'ouvrir à partir de visual basic dans access une image avec le logiciel photshop sachant que j'ai le chemin du logiciel et du fichier.. merci !

Reply

Marsh Posté le 25-03-2004 à 11:09:54   

Reply

Marsh Posté le 25-03-2004 à 22:27:37    

recherche avec l'API ShellFileExecute et execute là sur le fichier, il t'ouvrira peut être le fichier image si celui-ci est associé à photoshop, mais pas sûr. Regarde API windows dans ma signature.

Reply

Marsh Posté le 25-03-2004 à 23:18:57    

bien ta signature :-D  
 
merci beaucoup  :  
Dim Logiciel, Fichier, Alancer, Application
Logiciel = "C:\Program Files\Adobe\Adobe Photoshop CS\Photoshop.exe"
Fichier = racine.racine & Me.chemin_photo
Alancer = Logiciel & " " & Fichier
 
Application = Shell(Alancer, vbMaximizedFocus)

Reply

Marsh Posté le 28-03-2004 à 13:21:54    

1) il faut typer tes variables !
2) Shell [:vomi] :non:. Shellexecute :jap: (ou une de ses alternatives)
A part ça la démarche consistant à passer en argument à photoshop le nom du fichier à ouvrir est la bonne. J'allais te le suggérer sans être sûr que de son côté photoshop le supportait (même si on pouvait supposer que oui) mais apparemment tu as déjà testé.


---------------
Réalisation amplis classe D / T      Topic .Net - C# @ Prog
Reply

Marsh Posté le 28-03-2004 à 14:26:01    

TotalRecall a écrit :

1) il faut typer tes variables ! spa ca faute si vba a ete mal concu et quil faut simposer des regles a chaque fois
2) Shell [:vomi] :non:. Shellexecute :jap: (ou une de ses alternatives) idem ca sert a quoi davoir cree des fct toutes faites  si les api win32 sont mieux
A part ça la démarche consistant à passer en argument à photoshop le nom du fichier à ouvrir est la bonne. J'allais te le suggérer sans être sûr que de son côté photoshop le supportait (même si on pouvait supposer que oui) mais apparemment tu as déjà testé.


Message édité par red faction le 28-03-2004 à 14:26:48
Reply

Marsh Posté le 28-03-2004 à 15:41:23    


 
Les régles de typer des variables rien aoir avec la conception de Vb ! c'est dans tous les langages pareil, en C, c++,ect...les raisons, je m'en souviens plus. Je crois qu'il y a une histoire avec la mémoire ou quelques chose comme ça ! d'autre te le diront mieux que moi !
 
Shell et ShellExectuteEx, c'est la même chose ! L'API windows est plus puissante. Pour terminer ca évite au dévellopeur de Vb, de passer trois heures à chercher les API et à les déclarer surtout. Aussi pour faciliter la tache !


Message édité par cvb le 28-03-2004 à 15:43:34
Reply

Marsh Posté le 28-03-2004 à 16:14:35    

oui je c que ca na rien avoir avec vb mais bon s'ils avaient ete un peu plus loin dans leur reflexion les gens de chez crosoft aurait interdit le fait de declarer des varibales sans preciser leur type
(et encore jparle pas de variant la  [:vomi2] ) de meme que le option explicit devrait par defaut etre la (ca devrait pas etre un option quoi)
 
qd au api a declarer, en C,C++ ou autre  jfais mon include et basta, pas oblige de me taper des declarations pour rien  :o

Reply

Marsh Posté le 28-03-2004 à 16:28:02    

cvb a écrit :


 
Les régles de typer des variables rien aoir avec la conception de Vb ! c'est dans tous les langages pareil, en C, c++,ect...les raisons, je m'en souviens plus. Je crois qu'il y a une histoire avec la mémoire ou quelques chose comme ça ! d'autre te le diront mieux que moi ! > c'est à peu pres ça, quand tu déclares une variable on lui réserve un espace prédeterminé en mémoire en fonction de son type : un boolean (char) sera plus petit qu'un integer qui sera plus petit qu'un long, lui même plus petit qu'un double... etc. Le type variant (celui assigné par défaut lorsque on ne précise pas le type comme le fait l'auteur du topic) est donc censé pouvoir "tout" contenir -> plus importante occupation mémoire. Pour une appli de ce genre c'est pas grave, mais toujours est il que c'est tres "sale" comme maniere de programmer ainsi, surtout que la solution est toute simple.
Au même titre le Option Explicit (qui oblige à déclarer toutes ses variables, et crois moi sur de grosses procédures le fait de traiter les variables n'importe comment peut causer des bugs vraiment chiants à dénicher (genre un truc qui reste toujours à 0 alors qu'il devrait changer de valeur, juste parce qu'on a fait une faute de frappe une fois dans le nom de la variable) ne devrait rien avoir d'optionnel.
 
Shell et ShellExectuteEx, c'est la même chose ! L'API windows est plus puissante. Pour terminer ca évite au dévellopeur de Vb, de passer trois heures à chercher les API et à les déclarer surtout. Aussi pour faciliter la tache ! > Bon, j'avoue que le Shellexecute n'est pas indispensable. Celà dit la déclaration est vraiment simple à trouver, faut pas déconner non plus :sarcastic: (API Viewer, ou google...). C'est surtout que personnellement avec Shell j'ai déjà vu 2 3 bizarreries alors autant l'éviter.


---------------
Réalisation amplis classe D / T      Topic .Net - C# @ Prog
Reply

Marsh Posté le 28-03-2004 à 23:02:03    

je n'ai jamais dis que ShelleExecute était compliqué à déclarer, mais certaines sont assez tendus ! comme par exemple celle qui traite des API windows...et me dis pas no ! ;)

Reply

Marsh Posté le 29-03-2004 à 21:40:46    

red faction a écrit :

oui je c que ca na rien avoir avec vb mais bon s'ils avaient ete un peu plus loin dans leur reflexion les gens de chez crosoft aurait interdit le fait de declarer des varibales sans preciser leur type
(et encore jparle pas de variant la  [:vomi2] ) de meme que le option explicit devrait par defaut etre la (ca devrait pas etre un option quoi)
 
qd au api a declarer, en C,C++ ou autre  jfais mon include et basta, pas oblige de me taper des declarations pour rien  :o


 
vi mais si tu commences sur ce qu'il est plus rapide de faire en C++ qu'en VB, tu vas pas pouvoir aller bien loin :D

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed