Accueil > Forum > > > > Comment faire pour avoir une instance unique
Comment faire pour avoir une instance unique
jeudi 26 octobre 2006 à 18:07:10 |
Comment faire pour avoir une instance unique

frederios
|
Comment faire pour avoir une instance unique de mon programe et capturer le command line(Command$) sur l'instance qui vient d'etre executer donc en bref j'execute mon programe du commande line une premiere fois ex c:\programe.exe /f:allo et je le reexecute c:\programe.exe /f:bon 2iem fois alors la je veux que ca block une 2iem execution et recuperer le"/f:bon 2iem fois" je sais pas si vous comprenez? Merci a l'avance...
|
|
jeudi 26 octobre 2006 à 18:12:36 |
Re : Comment faire pour avoir une instance unique

FPatrick
|
Réponse acceptée !
Bonjour,
Pour la première partie, il existe en vb6 app.previnstance qui te dira s'il existe déjà une instance de ton application (attention a tester en mode compilation seulement).
Pour la deuxième partie, tu peux par exemple une liaison dde entre tes applications mais je pense qu'il y a beaucoup mieux que cela.
Bonne journée.
|
|
jeudi 26 octobre 2006 à 18:16:48 |
Re : Comment faire pour avoir une instance unique

frederios
|
Merci pour la premiere partie du probleme effectivement j'avais jamais remarquer mais oui il y a un app.previnstance. merci
quelquun a une idee de comment faire passer le command$ d'un instance a l'autre?
|
|
jeudi 26 octobre 2006 à 18:17:57 |
Re : Comment faire pour avoir une instance unique

mortalino
|
Salut, utilise cette fonction de Renfield (que tu peux retrouver ICI) :  Public Function IsAlreadyRunning() As Boolean Dim hMap As Long Dim pMem As Long Dim hPid As Long '# Nous tentons ici d'acceder au mappage (précedemment créé ?) hMap = OpenFileMapping(FILE_MAP_READ, 0, App.Title) If hMap <> 0 Then '# L'application est déjà lancée. pMem = MapViewOfFile(hMap, FILE_MAP_READ, 0, 0, 0) If pMem <> 0 Then '# On récupère le handle vers la précédente fenêtre CopyMemory hPid, ByVal pMem, 4 If hPid Then On Error Resume Next '# On active l'instance précedente AppActivate hPid On Error GoTo 0 End If UnmapViewOfFile pMem End If '# On libère le handle hmap CloseHandle hMap '# et on prévient l'appelant que l'application avait dejà été lancée. IsAlreadyRunning = True Else '# Nous sommes dans la première instance de l'application. '# Nous allons laisser une marque en mémoire, pour l'indiquer hMap = CreateFileMapping(INVALID_HANDLE_VALUE, ByVal 0&, PAGE_READWRITE, 0, 4, App.Title) If hMap <> 0 Then '# On ouvre le 'fichier' en écriture pMem = MapViewOfFile(hMap, FILE_MAP_WRITE, 0, 0, 0) If pMem <> 0 Then '# On y écrit le process courant CopyMemory ByVal pMem, GetCurrentProcessId(), 4 UnmapViewOfFile pMem End If '# Pas de CloseHandle hMap ici, sous peine de détruire le mappage lui-même... End If End If End Function
' Remarque : ' L'avantage par rapport a l'instruction App.PrevInstance de VB, ' c'est qu'ici, l'éventuelle première instance sera réactivée.
--Mortalino-- Colorisation automatique
@++
--Mortalino-- Le mystérieux chevalier, "Provençal, le Gaulois" /DIV>
|
|
jeudi 26 octobre 2006 à 18:34:16 |
Re : Comment faire pour avoir une instance unique

frederios
|
est-ce qu'il manque des declaration pour que ca marche parce que moi ca me dit sub or function not define sur OpenFileMapping  tout de meme merci pour la function
|
|
jeudi 26 octobre 2006 à 18:46:42 |
Re : Comment faire pour avoir une instance unique
|
dimanche 29 octobre 2006 à 22:15:16 |
Re : Comment faire pour avoir une instance unique

Renfield
|
Pour la seconde partie de la question, concernant le passage des paramètres...
il faut établir une communication entre les deux instances, envoyer les parametres de l'instance 2 a l'instance 1 activer l'instance 1 fermer l'instance 2
Renfield Admin CodeS-SourceS- MVP Visual Basic
|
|
dimanche 29 octobre 2006 à 22:17:55 |
Re : Comment faire pour avoir une instance unique

frederios
|
oui je vais faire passer ca par le registre cest tout
|
|
dimanche 29 octobre 2006 à 22:25:22 |
Re : Comment faire pour avoir une instance unique

Renfield
|
par le registre..... admettons...
mais faut que tu puisse prévenir ton instance 1 qu'elle doit effectuer une action ... quelle doit réagir, aux paramètres recus (et ecris dans le registre) par l'instance 2
Renfield Admin CodeS-SourceS- MVP Visual Basic
|
|
dimanche 29 octobre 2006 à 22:27:26 |
Re : Comment faire pour avoir une instance unique

frederios
|
Parfais
je m'astine plus mais je trouve tout dememe que j'ai autant raison que toi alors continue
|
|
Cette discussion est classée dans : instance, programe, command, unique, 2iem
Répondre à ce message
Sujets en rapport avec ce message
Instance unique d'un exe [ par eldim ]
Bonjour,Comment faire pour développé un exe en VB.NET qui ne se lance qu'une seule fois par session (et non par PC) : si je le lance deux fois dans le
evenement et instance unique [ par zelze ]
Bonjour,Voila mon problème:J'ai fait un programme a instance unique et j'aimerai j'aimerai récupérer les arguments des lignes de commandes qui vers ce
Associer mon programme à une extension ? [ par dede1919 ]
Bonjour!Voilà je désire faire démarrer les .mp3 avec mon application. Après quelque recherche, j'ai trouvé que en ajoutant deux clés dans la base de r
Demande d'aide [ par dmic ]
Bonjour, j'ai un petit probleme avec cette fonction. Private Sub Button1_Click_2(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles B
erreur dans mon programe [ par rsx602 ]
Bonjours je conais un peut le v.b 6.0 mais pas plus qui faut. j'ai trouvé une source qui permet de crypter un fichier, donc de rende un fichier indéte
Executer son programe au démarrage de windows [ par kooker ]
BonjourJe veux que mon logiciel que j'ai conçu sous visual basic 2005 express puisse se lancer au démarrage de WINDOWS.je ne sais pas comment faire ce
DataReceived l'interuption ne fonctionne pas: Besoin d'aide [ par Aselophe ]
Bonjour a tousJ'ai un petit probleme avec la fonction DataReceived. Interuption a la reception d'un byte ne fonctionne pas.J'ai pourtant cherché sur p
tableau d'instance dynamique [ par jee0404 ]
Bonjour J'ai un problème , je ne sais pas comment créé un tableau d'instance dynamique parce que je veux creer une liste d'instance , mais je
Cmd Command checkbox ! =En lien avec Texbox= [ par leonardo14 ]
Bonjour jaimerais savoir comment on fait pour que lorsque que je valide un checkbox scelui si ecrit dans le textbox...Je donne un exemple...Lorsque je
Gestion des instances d'Excel en VB6 [ par Wanours ]
Bonjour à tous,A partir d'une dll VB6 chargée dans une application extérieure, je viens : - Ouvrir Excel en mode "caché" (nouvelle instance, create
Livres en rapport
|
Derniers Blogs
COMMENT MAPPER UNE VUE SQL SUR UNE COLLECTION DE COMPLEX TYPE?COMMENT MAPPER UNE VUE SQL SUR UNE COLLECTION DE COMPLEX TYPE? par Matthieu MEZIL
Avec EF, les vues doivent être mappées sur des entity types. Le problème c'est que les entity types doivent avoir une clé. Avec EF, nous avons les complex type qui n'ont pas de clé mais les vues ne peuvent pas être mappées dessus. Avec EF4, il est possibl...
Cliquez pour lire la suite de l'article par Matthieu MEZIL [WF4] UN BINDING ACTIVITY/ACTIVITYDESIGNER QUI PASSE MAL?[WF4] UN BINDING ACTIVITY/ACTIVITYDESIGNER QUI PASSE MAL? par JeremyJeanson
Certain d'entre vous on peut être vécu cette situation embarrassante après quelques temps passer avec WF4 : Au début avec mon " ActivityDesigner" , tout allait bien. Et puis un jour j'ai au des problèmes de " Binding" . Alors nous sommes allé sur le site ...
Cliquez pour lire la suite de l'article par JeremyJeanson MYTIC - SHAREPOINT 2010 : DéJà UN MYTHE MICROSOFT ?MYTIC - SHAREPOINT 2010 : DéJà UN MYTHE MICROSOFT ? par junarnoalg
La prochaine session de MyTIC aura lieu à Namur, le 23 mars prochain. Pendant presque une heure, nous parlerons de SharePoint 2010. Voici un aperçu du programme.
Accueil : 17h30 Début de la session : 18h00 - Les nouvelles int...
Cliquez pour lire la suite de l'article par junarnoalg
Logiciels
Academy System (10.9.4.0)ACADEMY SYSTEM (10.9.4.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Xilisoft Convertisseur Vidéo Ultimate (5.1.39.0305)XILISOFT CONVERTISSEUR VIDéO ULTIMATE (5.1.39.0305)Xilisoft Convertisseur Vidéo Ultimate est un outil puissant de conversion vidéo, facile à utilise... Cliquez pour télécharger Xilisoft Convertisseur Vidéo Ultimate Xilisoft DVD Ripper Ultimate (5.0.64.0304)XILISOFT DVD RIPPER ULTIMATE (5.0.64.0304)Xilisoft DVD Ripper Ultimate est un logiciel excellent pour copier et convertir DVD vers presque ... Cliquez pour télécharger Xilisoft DVD Ripper Ultimate Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods
|