FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Une calculatrice en une ligne de programme
lire depuis un raccourcis. Emptypar jean_debord Aujourd'hui à 8:47

» Form(résolu)
lire depuis un raccourcis. Emptypar leclode Hier à 17:59

» trop de fichiers en cours
lire depuis un raccourcis. Emptypar Marc Hier à 11:42

» Bataille navale SM
lire depuis un raccourcis. Emptypar jjn4 Ven 26 Avr 2024 - 17:39

» Gestion d'un système client-serveur.
lire depuis un raccourcis. Emptypar Pedro Jeu 25 Avr 2024 - 19:31

» Les maths du crocodile
lire depuis un raccourcis. Emptypar jean_debord Jeu 25 Avr 2024 - 10:37

» Naissance de Crocodile Basic
lire depuis un raccourcis. Emptypar jean_debord Jeu 25 Avr 2024 - 8:45

» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
lire depuis un raccourcis. Emptypar Froggy One Mer 24 Avr 2024 - 18:38

» Dessine-moi une galaxie
lire depuis un raccourcis. Emptypar jjn4 Lun 22 Avr 2024 - 13:47

» Erreur END_SUB
lire depuis un raccourcis. Emptypar jjn4 Lun 22 Avr 2024 - 13:43

» Bug sur DIM_LOCAL ?
lire depuis un raccourcis. Emptypar papydall Dim 21 Avr 2024 - 23:30

» 2D_fill_color(résolu)
lire depuis un raccourcis. Emptypar leclode Sam 20 Avr 2024 - 8:32

» Consommation gaz électricité
lire depuis un raccourcis. Emptypar leclode Mer 17 Avr 2024 - 11:07

» on_key_down (résolu)
lire depuis un raccourcis. Emptypar leclode Mar 16 Avr 2024 - 11:01

» Sous-programme(résolu)
lire depuis un raccourcis. Emptypar jjn4 Jeu 4 Avr 2024 - 14:42

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Avril 2024
LunMarMerJeuVenSamDim
1234567
891011121314
15161718192021
22232425262728
2930     
CalendrierCalendrier
Le Deal du moment :
Cdiscount : -30€ dès 300€ ...
Voir le deal

 

 lire depuis un raccourcis.

Aller en bas 
3 participants
AuteurMessage
Invité
Invité




lire depuis un raccourcis. Empty
MessageSujet: lire depuis un raccourcis.   lire depuis un raccourcis. EmptySam 2 Juin 2012 - 14:05

Bonjour,
Est-ce que l'un de vous sais comment connaitre le chemin d'un raccourcis, puis y charger du texte dans un memo, ou une image dans un picture?
Y-at-il une DLL ou autre?

merci d'avance
Revenir en haut Aller en bas
Jean Claude

Jean Claude


Nombre de messages : 5948
Age : 69
Localisation : 83 Var
Date d'inscription : 07/05/2009

lire depuis un raccourcis. Empty
MessageSujet: Re: lire depuis un raccourcis.   lire depuis un raccourcis. EmptyDim 3 Juin 2012 - 9:09

Je suis pas sur d'avoir compris la demande, mais je tente une réponse.

(Sous XP) Clic-droit sur le raccourci, puis propriétés et la cible est prête a copier. Après ????
Revenir en haut Aller en bas
Invité
Invité




lire depuis un raccourcis. Empty
MessageSujet: Re: lire depuis un raccourcis.   lire depuis un raccourcis. EmptyDim 3 Juin 2012 - 12:06

Bonjour Jean-Claude,
Non, ce n'est pas cela.
J'aurais voulu faire ceci: file_load N,fichier$
en sachant que fichier$ est un raccourcis du nom.

En réalité, j'ai trouvé le moyen de me sortir de cela. Voila ce que je suis en train de faire:
Voir le Fichier : ESPACE_cosmos70.exe
J'ai changé mon idée, et les essais mon montré que ce n'était plus nécessaire le chargement depuis un raccourcis.

Cela dit, il serait intéressant de pouvoir le faire.
Revenir en haut Aller en bas
ambroise




Nombre de messages : 264
Localisation : Haute-Savoie
Date d'inscription : 29/04/2012

lire depuis un raccourcis. Empty
MessageSujet: Re: lire depuis un raccourcis.   lire depuis un raccourcis. EmptyDim 3 Juin 2012 - 12:23

Bonjour cosmos70,

j'ai lu dans ton fichier Espace_cosmos.exe qu'il t'était difficile de trouver un hébergeur gratuit sans pub. Je te donne une adresse d'hébergement suisse totalement gratuit, d'usage illimité en temps et sans pub. L'hébergeur accepte même d'ajouter des fonctions PHP à ta demande.

http://www.c-webhosting.org/

Tu ne seras pas déçu.
Revenir en haut Aller en bas
http://genealogie.cwebh.org/index.html
Invité
Invité




lire depuis un raccourcis. Empty
MessageSujet: Re: lire depuis un raccourcis.   lire depuis un raccourcis. EmptyDim 3 Juin 2012 - 12:37

Je te remercie Ambroise et bonjour,
Mais moi, cela me suffit. C'est une solution de remplacement qui me convient très bien, et de plus très facile à faire.

Si mes idées étaient toutes suivies, et que cela puisse être référencé par le moteur de Google, je pourrais aller voir, et faire un site. Mais cela ne servira que pour une ou deux personnes de notre communauté.

Par contre ton lien pour faire un site, pourrait être utile pour quelqu'un d'autre de ce forum. Mon but n'est pas de me faire un nom, mais je voulais avoir un outil simple, pour retrouver des idées qui m'ont intéressée, sans avoir à faire des recherches fastidieuses sur le forum. Ce qui m'intéresse, je le prends, et je le rajoute.
Cela dit, j'ai commencé hier soir, et je n'ai pas fini la mise au point pour faciliter le remplissage d'info ou de mémo.
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12274
Age : 74
Localisation : Ile de France
Date d'inscription : 29/12/2009

lire depuis un raccourcis. Empty
MessageSujet: Re: lire depuis un raccourcis.   lire depuis un raccourcis. EmptyDim 3 Juin 2012 - 13:44

J'ai trouvé un moyen de faire cela en Delphi, et je pourrais donc faire une DLL.

Mais j'ai trouvé mieux: je peux le faire en Panoramic ! Le programme qui suit, ouvre des raccourcis et trouve le fichier cible ! Il faut l'adapter, bien sûr. Pour le moment, il cherche deux raccourcis dont les noms sont rans les variables racc1$ et racc2$. Il y a deux sous-programmes. Le premier, nommé test, charge le fichier raccourci dans un tableau (largement surdimensionné, donc à adapter aussi). Une variable dump% permet d'avoir un dump hexa/ascii du contenu du raccourci (par défaut, désactivé). La seconde routine, nommée find, trouve le nom du fichier cible et l'affiche.

On peut extraire les parties significatives de ce programme pour l'intégrer dans une application.

Code:

label test, find

dim racc1$ : racc1$ = "C:\temp\Racc.txt"
dim racc2$ : racc2$ = "Raccourci vers Copie de horloge.ini"
dim dump% : dump% = 0
dim s$, block%(10000), siz%, i%, racc$, t$, l% , j%

width 0,1000 : height 0,800
memo 10 : top 10,10 : left 10,10
  bar_vertical 10 : font_name 10,"courier"
  width 10,950 : height 10,750

racc$ = racc1$
gosub test
gosub find

 racc$ = racc2$
 gosub test
 gosub find
end

test:
item_add 10,racc$
if lower$(right$(racc$,4))<>".lnk" then racc$ = racc$ + ".lnk"
filebin_open_read 1,racc$
siz% = filebin_size(1)
item_add 10,"Taille: "+str$(siz%)
if siz%>10000 then siz% = 10000
filebin_block_read 1,siz%,block%(0)
filebin_close 1
if dump%=0 then return
i% = 0
s$ = ""
t$ = ""
while i%<siz%
  if block%(i%)<32
    t$ = t$ + ".  "
  else
    t$ = t$ + chr$(block%(i%)) + "  "
  end_if
  s$ = s$ + right$("0"+hex$(block%(i%)),2) + " "
  if len(s$)>90
    item_add 10,s$
    item_add 10,t$
    s$ = ""
    t$ = ""
    item_add 10,""
  end_if
  i% = i% + 1
end_while
if len(s$)>0
  item_add 10,s$
  item_add 10,t$
end_if
return

find:
  for i%=1 to siz%
    if block%(i%)=hex("7D")
      if block%(i%+1)=hex("78")
        if block%(i%+2)=hex("4")
          if block%(i%+3)=hex("10")
            l% = block%(i%-1)
            t$ = ""
            for j%=1 to l%
              t$ = t$ + chr$(block%(i%+4+3+j%))
            next j%
            item_add 10,"Cible: "+t$
            item_add 10," "
            return
          end_if
        end_if
      end_if
    end_if
  next i%
  item_add 10,"Cible non trouvée !"
  item_add 10," "
  return
 
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Invité
Invité




lire depuis un raccourcis. Empty
MessageSujet: Re: lire depuis un raccourcis.   lire depuis un raccourcis. EmptyDim 3 Juin 2012 - 15:46

Bonjour Klaus,
Je regarderai ton programme. Je sais que je peux le faire en AutoIt maintenant, car les commandes existent, mais bon je veux l'éviter.
Je sais que j'ai déjà voulu charger avec un raccourcis, car j'ai très peu de mémoire sur mon ordinateur, et je ne sais plus très bien ce que j'avais voulu faire en ce temps là, mais je crois que c'était pour éviter de recopier des fichiers sur le disque C. (la phrase est un peu lourde, le principal est de comprendre)

Donc à l'occasion, si cela se reproduit, j'aurai ton programme en référence.
merci.

@amboise
Je viens de jeter un oeil à ton site, et ça semble correcte. Bon c'est pas mon choix, mais c'est une adresse à retenir.
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12274
Age : 74
Localisation : Ile de France
Date d'inscription : 29/12/2009

lire depuis un raccourcis. Empty
MessageSujet: Re: lire depuis un raccourcis.   lire depuis un raccourcis. EmptyDim 3 Juin 2012 - 16:13

Voici une version en peu plus aboutie. J'ai séparé les fonctions de "chargement" du raccourci de la fonction de "dump". Et je recrée le bloc de données à chaque fois, pour la taille exacte du raccourci - il n'y a plus d'espace perdu. Voici ce que ça donne:
Code:
' test_raccourcis.bas

label load, dump, find

dim racc1$ : racc1$ = "C:\temp\Racc.txt"
dim racc2$ : racc2$ = "Raccourci vers Copie de horloge.ini"
dim dump% : dump% = 0  : ' mettre 1 pour obtenir un dump hexa/alpha
dim s$, block%(1), siz%, i%, t$, l% , j%
dim racc$, path$ : ' paramètre entrée et sortie

width 0,1000 : height 0,800
memo 10 : top 10,10 : left 10,10
  bar_vertical 10 : font_name 10,"courier"
  width 10,950 : height 10,750

racc$ = racc1$
gosub load
if dump%=1 then gosub dump
gosub find

racc$ = racc2$
gosub load
if dump%=1 then gosub dump
gosub find

end

load:
  item_add 10,racc$
  if lower$(right$(racc$,4))<>".lnk" then racc$ = racc$ + ".lnk"
  filebin_open_read 1,racc$
  siz% = filebin_size(1)
  if variable("block%")=1 then free block%
  dim block%(siz%)
  item_add 10,"Taille: "+str$(siz%)
  if siz%>10000 then siz% = 10000
  filebin_block_read 1,siz%,block%(0)
  filebin_close 1
  return

dump:
  i% = 0
  s$ = ""
  t$ = ""
  while i%<siz%
    if block%(i%)<32
      t$ = t$ + ".  "
    else
      t$ = t$ + chr$(block%(i%)) + "  "
    end_if
    s$ = s$ + right$("0"+hex$(block%(i%)),2) + " "
    if len(s$)>90
      item_add 10,s$
      item_add 10,t$
      s$ = ""
      t$ = ""
      item_add 10,""
    end_if
    i% = i% + 1
  end_while
  if len(s$)>0
    item_add 10,s$
    item_add 10,t$
  end_if
  return

find:
  for i%=1 to siz%
    if block%(i%)=hex("7D")
      if block%(i%+1)=hex("78")
        if block%(i%+2)=hex("4")
          if block%(i%+3)=hex("10")
            l% = block%(i%-1)
            t$ = ""
            for j%=1 to l%
              t$ = t$ + chr$(block%(i%+4+3+j%))
            next j%
            path$ = t$
            item_add 10,"Cible: "+t$
            item_add 10," "
            return
          end_if
        end_if
      end_if
    end_if
  next i%
  path$ = "_"
  item_add 10,"Cible non trouvée !"
  item_add 10," "
  return
 


Dernière édition par Klaus le Dim 3 Juin 2012 - 19:21, édité 1 fois
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Invité
Invité




lire depuis un raccourcis. Empty
MessageSujet: Re: lire depuis un raccourcis.   lire depuis un raccourcis. EmptyDim 3 Juin 2012 - 16:20

Je mettrais ton programme dans mon "sorte d'espace..." que je fais ces jours-ci.
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12274
Age : 74
Localisation : Ile de France
Date d'inscription : 29/12/2009

lire depuis un raccourcis. Empty
MessageSujet: Re: lire depuis un raccourcis.   lire depuis un raccourcis. EmptyDim 3 Juin 2012 - 21:06

J'ai découvert un problème avec des cas particuliers. J'ai trouvé une doc sur la structure interne d'un raccourci et je vais faire le travail proprement. A plus tard...
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


Nombre de messages : 12274
Age : 74
Localisation : Ile de France
Date d'inscription : 29/12/2009

lire depuis un raccourcis. Empty
MessageSujet: Re: lire depuis un raccourcis.   lire depuis un raccourcis. EmptyDim 3 Juin 2012 - 23:06

Voilà, c'est réglé. Je pense que maintenant, on peut trouver les cibles des raccourcis pour tout fichier ou répertoire situés sur la machine locale. Je n'ai pas traité les raccourcis réseaux.

Il y a deux sous-programmes significatifs:
LOAD - charge un raccourci en mémoire
ANALYZE - trouve le nom complet vers la cible du raccourci

Ul faut charger le le nom complet du raccourci dans la variable racc$, puis appeler les deux sous-programmes dans l'ordre, et on trouve le nom du chemin dans la variable path$.

Voici le module définitif:
Code:
' test_raccourcis.bas

label load, dump, analyze

dim racc1$ : racc1$ = "Raccourci vers Test_EXECUTE.exe"
dim racc2$ : racc2$ = "Raccourci vers Test_EXECUTE.bas"
dim racc3$ : racc3$ = "C:\Test\Raccourci vers a.txt"
dim dump% : dump% = 0  : ' mettre 1 pour obtenir un dump hexa/alpha
dim s$, block%(1), siz%, i%, t$, l% , j% , off$, o% , o1%, o2% , dsk$
dim info%

dim flags%  : ' flags du raccourci
dim flags_shell%, flags_target%,  flags_description%,  flags_relative%
dim flags_work%, flags_arguments%, flags_icon%

dim racc$, path$ : ' paramètres entrée/sortie

width 0,1000 : height 0,800
memo 10 : top 10,10 : left 10,10
  bar_vertical 10 : font_name 10,"courier"
  width 10,950 : height 10,750

racc$ = racc1$
item_add 10,racc$
gosub load
if dump%=1 then gosub dump
gosub analyze
item_add 10,"Cible: "+path$
item_add 10," "

racc$ = racc2$
item_add 10,racc$
gosub load
if dump%=1 then gosub dump
gosub analyze
item_add 10,"Cible: "+path$
item_add 10," "

racc$ = racc3$
item_add 10,racc$
gosub load
if dump%=1 then gosub dump
gosub analyze
item_add 10,"Cible: "+path$
item_add 10," "

end

load:
  if lower$(right$(racc$,4))<>".lnk" then racc$ = racc$ + ".lnk"
  filebin_open_read 1,racc$
  siz% = filebin_size(1)
  if variable("block%")=1 then free block%
  dim block%(siz%)
  if dump%=1 then item_add 10,"Taille: "+str$(siz%)
  if siz%>10000 then siz% = 10000
  filebin_block_read 1,siz%,block%(0)
  filebin_close 1
  return

dump:
  i% = 0
  s$ = ""
  t$ = ""
  off$ = "0000 "
  while i%<siz%
    if block%(i%)<32
      t$ = t$ + ".  "
    else
      t$ = t$ + chr$(block%(i%)) + "  "
    end_if
    s$ = s$ + right$("0"+hex$(block%(i%)),2) + " "
    if len(s$)=48
      item_add 10,off$+s$
      item_add 10,off$+t$
      s$ = ""
      t$ = ""
      item_add 10,""
      off$ = right$("000"+hex$(i%+1),4)+" "
    end_if
    i% = i% + 1
  end_while
  if len(s$)>0
    item_add 10,off$+s$
    item_add 10,off$+t$
  end_if
  return

analyze:
  ' analyser les flags du raccourci
  flags% = block%(hex("14"))
' bit number and meanings:
' 0 The shell item id list is present. The shell item id list is absent.
' 1 Points to a file or directory. Points to something else.
' 2 Has a description string. No description string.
' 3 Has a relative path string. No relative path.
' 4 Has a working directory. No working directory.
' 5 Has command line arguments. No command line arguments.
' 6 Has a custom icon. Has the default icon.  return
  flags_shell% = bin_and(flags%,1)
  flags_target% = bin_and(flags%,2)
  flags_description% = bin_and(flags%,4)
  flags_relative% = bin_and(flags%,8)
  flags_work% = bin_and(flags%,16)
  flags_arguments% = bin_and(flags%,32)
  flags_icon% = bin_and(flags%,64)
  if dump%=1
    if flags_shell%>0 then item_add 10,"Shell item ID est présent"
    if flags_target%>0 then item_add 10,"Pointe vers un fichier ou dossier"
    if flags_description%>0 then item_add 10,"Description présente"
    if flags_relative%>0 then item_add 10,"Chemin relatif présent"
    if flags_work%>0 then item_add 10,"Dossier de travail présent"
    if flags_arguments%>0 then item_add 10,"Arguments de commande présents"
    if flags_icon%>0 then item_add 10,"Icône présente"
  end_if
  o% = hex("4C")
 
  if flags_target%>0
    o% = o% + 2 : ' dépasser la longueur de la section
    l% = block%(o%) + block%(o%+1)*256
    while l%>0  : ' dépasser toute la section
      o% = o% + l%
      l% = block%(o%) + block%(o%+1)*256
    end_while
    o% = o% + 2
  end_if
  if flags_target%>0
    o2% = o%
    o% = o% + 4 : ' dépasser la taille de la liste
    o% = o% + 4 : ' dépasser la taille de l'entête de la liste
    info% = block%(o%) + block%(o%+1)*256 + block%(o%+2)*256*256 + block%(o%+3)*256*256*256
    if bin_and(info%,1)>0    : ' volume and local base flag
      o% = o% + 8 : ' dépasser les infos et l'adresse du label
      o1% = o2% + block%(o%) + block%(o%+1)*256 + block%(o%+2)*256*256 + block%(o%+3)*256*256*256
      path$ = ""
      while block%(o1%)>0
        path$ = path$ + chr$(block%(o1%))
        o1% = o1% + 1
      end_while
    end_if
  end_if
  return
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Contenu sponsorisé





lire depuis un raccourcis. Empty
MessageSujet: Re: lire depuis un raccourcis.   lire depuis un raccourcis. Empty

Revenir en haut Aller en bas
 
lire depuis un raccourcis.
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Récupérer un source depuis un executable
» rappel de quelques raccourcis de l'éditeur
» Problème de lancement d'un prg depuis du nom d'un fichier[R]
» Objets depuis un fichier
» Fichier zip depuis Panoramic

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: A l'aide!-
Sauter vers: