/ Forside / Teknologi / Udvikling / VB/Basic / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
VB/Basic
#NavnPoint
berpox 2425
pete 1435
CADmageren 1251
gibson 1230
Phylock 887
gandalf 836
AntonV 790
strarup 750
Benjamin... 700
10  tom.kise 610
Kommunikation med 'sig selv'
Fra : Bjarke Walling Peter~


Dato : 07-06-03 13:43

Hej.

Hvis jeg har lavet et program og jeg starter flere instances af dette - kan
man så på en eller anden måde kommunikere imellem dem?

F.eks. hvis jeg nu har mit_program.exe og starter det 3 gange - så kan et af
programmerne sende en tekststreng ud som de andre 2 modtager.

På forhånd tak!

Mvh. Bjarke



 
 
Patrick Hayes (09-06-2003)
Kommentar
Fra : Patrick Hayes


Dato : 09-06-03 17:37

> Hvis jeg har lavet et program og jeg starter flere instances af dette -
kan
> man så på en eller anden måde kommunikere imellem dem?
>
> F.eks. hvis jeg nu har mit_program.exe og starter det 3 gange - så kan et
af
> programmerne sende en tekststreng ud som de andre 2 modtager.

hvis de kører på samme maskine, så skulle det ikke være noget problem.

ellers må du nok lave en lille server applikation der står for at håndtere
kontakten mellem programmerne.

- patrick



Tomas Christiansen (09-06-2003)
Kommentar
Fra : Tomas Christiansen


Dato : 09-06-03 21:47

Patrick Hayes skrev:
> hvis de kører på samme maskine, så skulle det ikke være noget problem.

Kunne du ikke løfte sløret for _hvordan_ man så gør det - når det ikke er
noget problem?

-------
Tomas


Patrick Hayes (10-06-2003)
Kommentar
Fra : Patrick Hayes


Dato : 10-06-03 10:47

> > hvis de kører på samme maskine, så skulle det ikke være noget problem.
>
> Kunne du ikke løfte sløret for _hvordan_ man så gør det - når det ikke er
> noget problem?

her må jeg så indrømme at jeg ikke har prøvet det i VB, kun Java.
Jeg er sikker på at det kan sikkert lade sig gøre, men efter at have kigget
lidt i MSDN libray kunne jeg ikke finde noget.

hvad er det du skal lave? en form for chat app?

for hvis du skal lave noget der også skal kunne fungere mellem flere
maskiner, så vil jeg nok vælge C++/java istedet.

- patrick



Bjarke Walling Peter~ (10-06-2003)
Kommentar
Fra : Bjarke Walling Peter~


Dato : 10-06-03 11:07

Patrick Hayes skrev:
> her må jeg så indrømme at jeg ikke har prøvet det i VB, kun Java.
> Jeg er sikker på at det kan sikkert lade sig gøre, men efter at have
kigget
> lidt i MSDN libray kunne jeg ikke finde noget.
>
> hvad er det du skal lave? en form for chat app?
>
> for hvis du skal lave noget der også skal kunne fungere mellem flere
> maskiner, så vil jeg nok vælge C++/java istedet.

Du kender ikke til Windows API der kan gøre det?

Der er mange forskellige ting jeg skal bruge det til.

Lige nu er det fordi jeg har mit program associeret med en filtype. Når man
dobbeltklikker på en fil af den filtype åbner den en ny instance af mit
program, men det skal den ikke - den skal blot åbne filen i det allerede
åbne program - altså skal filnavnet sendes fra den nye instance til den
allerede åbnede hvorefter den ny lukker igen.
Det er endnu værre hvis man markerer 100 filer, højreklikker og trykker Åben
.... så er Windows smart at åbne 100 instances ... men igen, det kan nemt
klares, hvis jeg blot havde den kommunikation.

Førhen har jeg f.eks. haft brug for det, når jeg har udviklet lidt større
programmer (hvor man kunne have flere instances åbne). Når man så ændrede i
indstillingerne i f.eks. den ene skal de andre jo vide at disse
indstillinger er bleven ændret - ligesom du kan have flere Word dokumenter
åbne, men der er ikke et sæt indstillinger for hver Word-fil - det ville
være irriterende at skulle lukke sine Word-dokumenter for f.eks. at ændre
visningen af værktøjslinien og til sidst åbne sine Word-dokumenter igen
(eller ændre værktøjslinien for alle Word-dokumenterne!). Det er heldigvis
ikke nødvendigt.
Selv løste jeg det med simpelthen løbende at tjekke efter ændringer i
indstillingerne i registreringsdatabasen. Men hvis jeg kunne få dem til at
kommunikere ville det være meget nemmere - og en mere logisk løsning.

Mvh. Bjarke



Tomas Christiansen (10-06-2003)
Kommentar
Fra : Tomas Christiansen


Dato : 10-06-03 22:43

Bjarke Walling Petersen skrev:
> Du kender ikke til Windows API der kan gøre det?

Jeg tror at MS nok har tænkt sig at man bør bruge Named Pipe's til den slags
ting.
Hvis du vil prøve at "rode" med det, skal du kigge efter funktionerne
CreateNamedPipe til server-delen og CreateFile/CallNamedPipe til
klient-delen.
Husk at der er stor performance-forskel på Local Named Pipe's og Network
Named Pipe's.

Har ikke selv rodet mig ud i brugen af Named Pipe's, men jeg er sikkert på
at gruppen her gerne hører om dine erfaringer.

-------
Tomas


Bjarke Walling Peter~ (09-06-2003)
Kommentar
Fra : Bjarke Walling Peter~


Dato : 09-06-03 22:33

Patrick Hayes skrev:
> hvis de kører på samme maskine, så skulle det ikke være noget problem.
[klip]

Det gør de. Man kunne jo altid lave tcp/ip-kommunikation lokalt mellem
programmerne på en 'hemmelig' port, men jeg synes det er lidt overkill -
sagt på en anden måde: Der må være en mere direkte løsning.

Mvh. Bjarke



Søg
Reklame
Statistik
Spørgsmål : 177461
Tips : 31964
Nyheder : 719565
Indlæg : 6408216
Brugere : 218881

Månedens bedste
Årets bedste
Sidste års bedste