Results 1 to 12 of 12

Thread: VCL Form programma's starten niet vanaf een netwerkstation

  1. #1

    VCL Form programma's starten niet vanaf een netwerkstation

    Momenteel zijn wij aan het experimenteren met Delphi 8.net en lopen tegen het volgende probleem aan.

    We maken een nieuwe VCL-Form applicatie en slaan deze op als project1.exe. Als wij deze lokaal starten (bijv. c-schijf) dan gaat het goed, plaatsen wij dezelfde exe op een netwerkstation (share) en starten deze vervolgens vanaf een werkstation dan krijgen wij de volgende error.

    Common language runtime debugging services
    application has generated an exception that could not be handled
    etc.....

    Klikken wij op cancel dan krijgen wij:
    Registered JIT debugger is not available etc.....

    Starten wij de exe vanaf de server zelf dan werkt deze wel.

    Het 'programma' is gewoon een form met een button zonder verdere code.

    Maken we hetzelfde programmaatje als een winform application, dan kunnen we het overal vandaan starten zonder problemen.

    Zijn er bepaalde restricties bij vcl-form applicaties of zijn er instellingen nodig aan de server zijde?

    Alvast bedankt!
    `Erkennen dat je iets niet weet is de eerste stap naar kennis`

  2. #2
    Mis je niet de extra assemblies die je nodig hebt bij een VCL.Net app? Borland.*.dll
    We adore chaos because we like to restore order - M.C. Escher

  3. #3
    SillyMember
    Join Date
    May 2003
    Location
    Gent
    Posts
    7,725
    Ook mogelijk: de .NET security settings zorgen ervoor dat .NET apps in een soort sandbox worden gerund als ze gestart worden van een network share. Dit is enkel een probleem voor bepaalde applicaties die eigenlijk speciale settings nodig hebben (niet alleen Delphi.NET, maar ook C#, VB.NET, ...) bijvoorbeeld voor het gebruik van PInvoke. Spijtig genoeg blijken alle VCL forms assemblies in deze categorie te vallen.
    Je kan het oplossen door de assemblies full trust te geven (voor een network share is dat dan LocalIntranet_Zone i.p.v. My_Computer_Zone , die trouwens standaard de FullTrust security setting heeft).
    Je zou ook kunnen proberen de VCL statisch mee te linken i.p.v. te referencen (weet niet of dat je probleem zal oplossen, maar je kan het misschien eens voor ons uitproberen?).
    All methodologies are based on fear. -- Kent Beck.

  4. #4
    Wat betreft de 'sandbox-theorie' dit zal ik eens nakijken maar die borland dll's waar kan ik die vinden en waar moet ik die vervolgens plaatsen? In dezelfde directory als de exe file?
    `Erkennen dat je iets niet weet is de eerste stap naar kennis`

  5. #5
    SillyMember
    Join Date
    May 2003
    Location
    Gent
    Posts
    7,725
    In de project manager zie je onder references welke assemblies je programma gebruikt (ook het pad staat er bij). Kijk naar de "Borland." namespace.
    Zoals al gezegd kan je ze ook statisch meelinken (rechts klikken en Link in Delphi Units aanvinken).
    All methodologies are based on fear. -- Kent Beck.

  6. #6
    We hebben nu de dll's meegelinkt en de exe file is nu inderdaad een stuk groter. We nemen dus aan dat die dll's er nu inzitten. Echter de foutmelding blijft hetzelfde.

    We hebben de assemblies settings nagekeken en alles staat op FULL trust. (Dit hebben we gedaan op de server, domain controller, waar de share naar toe verwijst.
    Helaas de foutmelding blijft hetzelfde.
    `Erkennen dat je iets niet weet is de eerste stap naar kennis`

  7. #7
    Inmiddels erachter dat je die security instellingen dus op de pc moet doen waar je de exe file VANAF wilt starten. Dus in ons geval dus op het werkstation en dus niet op de server.

    Bedankt voor jullie hulp we gaan verder zweten.....
    `Erkennen dat je iets niet weet is de eerste stap naar kennis`

  8. #8
    SillyMember
    Join Date
    May 2003
    Location
    Gent
    Posts
    7,725
    Originally posted by gilby
    Inmiddels erachter dat je die security instellingen dus op de pc moet doen waar je de exe file VANAF wilt starten...
    Ja, dit bleek inderdaad niet echt duidelijk uit mijn post, achteraf bekeken. Sorry.
    All methodologies are based on fear. -- Kent Beck.

  9. #9
    Dirk Andries,

    Geen probleem, je hebt me in ieder geval de goede richting opgestuurd!
    Bedankt.
    `Erkennen dat je iets niet weet is de eerste stap naar kennis`

  10. #10
    Quote Originally Posted by Dirk Andries
    Zoals al gezegd kan je ze ook statisch meelinken (rechts klikken en Link in Delphi Units aanvinken).
    Ik had dezelfde foutmelding toen ik mijn VCL.NET app op een andere computer runde.
    Toen ik de onderstaande assemblies had gelinkt in de unit, toen startte het programma wel normaal op, op de andere computer. Maar het bestand was wel 1,35 MB geworden. (i.p.v. 12,5 kB)

    Borland.Delphi.dll
    Borland.Vcl.dll
    Borland.VclRtl.dll

    1,35 MB is erg groot voor een klein tooltje. Ik hoop niet dat ik altijd zo mijn VLC apps moet schrijven. Het lijkt me wel dat er een oplossing voor bestaat, misschien weet iemand er een?

  11. #11
    SillyMember
    Join Date
    May 2003
    Location
    Gent
    Posts
    7,725
    1) Gebruik WinForm i.p.v. VCL.
    2) Je hoeft ze overigens niet mee te linken, maar dan moeten de nodige assemblies wel beschikbaar zijn voor de loader.
    Overigens is dat voor andere programmeertalen in .NET ook zo (alleen zitten de assemblies nodig voor bijvoorbeeld Visual Basic.NET reeds in de runtime van het .NET framework).
    All methodologies are based on fear. -- Kent Beck.

  12. #12
    Oké dan gebruik ik voortaan Winforms of Delphi Win32 apps
    Bedankt prof!

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. Replies: 67
    Last Post: 15-Jun-04, 12:32

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •