Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Körs program? Använda semafor?

Postades av 2006-05-15 19:21:56 - Peter Larsson, i forum visual basic - allmänt, Tråden har 12 Kommentarer och lästs av 860 personer

Hej jag har ett VB-program som anropar ett annat program på lokala nätverket. En indata-fil skapas av VB-programmet som sedan läses av Console-programmet som ger utdata i annan fil.

Hur kontrollerar jag att Console-programmet inte körs (kanske har hängt sig)? Utdata-filen får ej skrivas över förrän VB-programmet läst in den.

Någon med en fin lösning?


Svara

Sv: Körs program? Använda semafor?

Postades av 2006-05-16 08:28:02 - Sven Åke Persson

Snabbt tycker jag att det verkar som du skall använda ShellExecute för att öppna ditt prog.
<code>
Private Declare Function ShellExecute Lib "shell32.dll" _
Alias "ShellExecuteA" _
(ByVal hwnd As Long, _
ByVal lpOperation As String, _
ByVal lpFile As String, ByVal lpParameters As String, _
ByVal lpDirectory As String, _
ByVal nShowCmd As Long) As Long

Const SW_SHOWNORMAL = 1

Private Sub Command1_Click()
Dim semafor As Long
semafor = ShellExecute(Me.hWnd, vbNullString, "filens namn", _
vbNullString, "sökväg till mappen(Dir)", SW_SHOWNORMAL)

If semafor = 0 Then MsgBox "trubble"
'eller en loop som ligger och väntar på Ok
'Do Until semafor <> 0
' DoEvents
'Loop
'Gör något
End Sub
</code>
<b>If the function succeeds,
the return value is the instance handle of the application that was run.</b>

Dvs får du en handler i retur så är det Ok


Svara

Sv:Körs program? Använda semafor?

Postades av 2006-05-16 18:15:53 - Peter Larsson

Hej

Jag glömde säga att jag redan använder följande kod för att anropa Console-programmet:

<code>
Dim wScr as Object
Set wScr = CreateObject("WScript.Shell")
Call wScr.Run("consoleprogram.exe", 1, true)
</code>

Jag väntar alltså tills det att programmet körts klart. VB-programmet exekverar inte vidare förrän Console-programmet körts klart.

För övrigt, vet någon hur jag programmatiskt stänger ner "consoleprogram.exe" efter ett antal sekunder? (om programmet skulle hänga sig)


Svara

Sv: Körs program? Använda semafor?

Postades av 2006-05-17 06:11:22 - Sven Åke Persson

Det är ju ganska meningslöst att försöka hjälpa dig i dom
olika trådarna du far omkring i hur man än svarar så låser
du dig i dina egna lösningar som inte funkar.

Skulle du kunna tänka dig att prova ShellExecute och lägga
en Do Loop som väntar på att ditt Script har kört färdigt.


Svara

Sv: Körs program? Använda semafor?

Postades av 2006-05-17 07:58:42 - Johan Djupmarker

Eftersom du verkar exekvera console-programmet på klienten blir det hela lite svårare. En mutex hade annars gått att använda om programmet alltid exekverades på samma maskin.

Varför kan du inte låta 2 klienter köra programmet samtidigt?

Det enda sättet jag kan komma på är att skriva till en fil på en bestämd plats när programmet körs. Problemet är då att du inte får reda på om programmet hänger sig. Det tråkiga är att du inte kan använda dej av tidsstämplar då du inte vet om klockorna går lika på de olika klienterna. Det snyggaste sättet att lösa det är att skriva om console-programmet så att det hanterar felen korrekt och aldrig hänger sig :)

/Johan


Svara

Sv:Körs program? Använda semafor?

Postades av 2006-05-17 18:35:48 - Peter Larsson

Sven-Åke, jag ursäktar mig.


Svara

Sv:Körs program? Använda semafor?

Postades av 2006-05-17 18:40:52 - Peter Larsson

Kanske man kan sätta flaggor på nåt sätt?


Svara

Sv: Körs program? Använda semafor?

Postades av 2006-05-17 19:25:27 - Andreas Hillqvist

Du skulle kunna försöka öpna filen exclusivt. Kontrollera om du inte får göra det. I så fall körs programmet.


Svara

Sv:Körs program? Använda semafor?

Postades av 2006-05-17 23:06:03 - Sven Åke Persson

Skriver bara en sak . Lycka till med allt "flummeri". :-D

LOL


Svara

Sv: Körs program? Använda semafor?

Postades av 2006-05-17 23:22:38 - Niklas Jansson

Om du av någon anledning har tillgång till en databas är det kanske möjligt att lösa grejen med transaktioner?


Svara

Sv:Körs program? Använda semafor?

Postades av 2006-05-18 17:14:40 - Peter Larsson

Tack sven


Svara

Sv:Körs program? Använda semafor?

Postades av 2006-05-18 17:17:36 - Peter Larsson

Hej Niklas.

Jo transaktioner är en säker och bra lösning.
Men tyvärr är det inget som jag har tillgång till.

Tack ändå


Svara

Nyligen

  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 725
27 958
271 751
371
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies