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


Jättekonstigt problem

Postades av 2008-01-02 09:45:20 - Martin Adrian, i forum visual studio.NET IDE, Tråden har 13 Kommentarer och lästs av 1350 personer

Har ett jättekonstigt problem som jag inte har en aning om vad jag skall göra åt.

Jag har skapat en .net assembly som samtidigt fungerar som COM-server. Ett vanligt VS installationsprojekt installerar assemblyn i GAC. Assemblyn är strong-name.

Det har fungerat bra ganska länge på många olika datorer med XP, Vista, Office XP/2003/2007.

Nu har några nya kunder fått problem med att assemblyn inte fungerar i Excel (VBA). Det konstigaste är att när de försöker använda den så stängs datorn av! Eftersom Excel har en dialogruta uppe som sägera att den inte kan hitta assemblyn så går det att avbryta avstängningen men alla andra program avslutas.

Eftersom alla andra program stängs av är det lite svårt att felsöka. Jag har dock lyckats hitta följande:
1. Assemblyn laddas inte, dvs ingen del av min kod körs överhuvudtaget.
2. På samma dator fungerar det fint att använda assemblyn via VBScript och Visual Studio.
3. Avinstallera och installera igen gör ingen skillnad.
4. Det händer på flera (ev alla) datorer hos samma kund.

Någon som har en idé om var jag skall leta efter problemet? Är det Excel, installationsprojektet, fusion loader, anti-virus eller något annat?


Svara

Sv: Jättekonstigt problem

Postades av 2008-01-02 10:18:51 - Pelle Johansson

Och du hittar inga fel i någon loggfil? Avinstallerar du denna så fungerar allting bra eller? Skriv i eventloggen från din service om det inte finns nån felhantering där - så kanske du kan börja hitta vad det är som felar.


Svara

Sv:Jättekonstigt problem

Postades av 2008-01-02 11:24:28 - Martin Adrian

Och du hittar inga fel i någon loggfil?
>Nix har kollat system/application/Security etc

>Avinstallerar du denna så fungerar allting bra eller?

Allt fungerar bra när den är installerad också. Det är bara när man försöker använda assemblyn från excel som datorn stängs av.

>Skriv i eventloggen från din service
Det är ingen service, utan en COM server. COM server innebär bara att den kan anropas från COM klienter (dvs exporterar ett interface). Det finns ingen server process eller något sådant.

I Excel skriver jag
Dim obj As New MinAssembly
och i VBScript
Set obj = CreateObject("MinAssembly")

Som jag skrev så körs ingen kod i min assembly eftersom den inte hittas när Excel skall öppna den på dessa datorer.


Svara

Sv: Jättekonstigt problem

Postades av 2008-01-02 11:35:02 - Pelle Johansson

Och det har fungerat förut samt existerande datorer och det smäller bara på nya datorer?

Vad är det du gör med objektet och vad används det till? Det kanske går att skriva om det lite fiffigare så det fungerar bättre? Kan det vara svenska / eng office? Servicepacks eller inte?


Svara

Sv:Jättekonstigt problem

Postades av 2008-01-02 12:50:46 - Martin Adrian

>Och det har fungerat förut samt existerande datorer och det smäller bara på nya datorer?

Det är inte nya datorer, bara några nya kunders datorer.

>Vad är det du gör med objektet och vad används det till? Det kanske går att skriva om det lite fiffigare
>så det fungerar bättre?

Min kod exekveras inte överhuvudtaget så det spelar ingen roll vad den gör.

>Kan det vara svenska / eng office? Servicepacks eller inte?

Det är inget sånt som skiljer dessa datorer från sådana där det fungerar.

Har precis hittat en sak som är gemensam för dessa datorer. .Net 2.0 var inte installerat före installationen och därför laddades ner av installationsprogrammet. Det verkar vara någon standardpryl i VS installationsprojekt för jag har inte lagt till det. Vet dock fortfarande inte om det har med saken att göra eller vad jag skall göra åt det.


Svara

Sv: Jättekonstigt problem

Postades av 2008-01-02 13:30:24 - Pelle Johansson

Ditt program, kör den net framework 1.1 eller 2.0?

Något med brandväggar/virusskydd?


Svara

Sv:Jättekonstigt problem

Postades av 2008-01-02 14:50:04 - Martin Adrian

>Ditt program, kör den net framework 1.1 eller 2.0?

2.0

>Något med brandväggar/virusskydd?

Själva nedladdningen och installationen går bra. Assemblyn fungerar ju också fint från både VBScript och Visual Studio. Tänkte också att det kanske har något med virusskydd att göra men förstår inte varför det skulle ställa till det enbart för Excel. Dessutom borde ju inte anti-virusprogrammet stänga va datorn.


Svara

Sv: Jättekonstigt problem

Postades av 2008-01-02 21:27:31 - Niklas Jansson

Om du instansierar COM-objektet från något annat än just Excel/VBA, då?


Svara

Sv:Jättekonstigt problem

Postades av 2008-01-03 08:22:15 - Martin Adrian

>Om du instansierar COM-objektet från något annat än just Excel/VBA, då?

Från VBScript fungerar det utan problem.

Enda skillnaden jag vet är att VBScript använder IDispatch medan VBA använder com interfacet. Det fungerar ju som sagt på många andra datorer så jag tror inte problemet ligger där. För säkerhets skull skall jag kolla vad som händer om jag använder IDispath (dvs CreateObject) från VBA.


Svara

Sv: Jättekonstigt problem

Postades av 2008-01-03 23:05:02 - Johan Lindfors

Kan det ha med kodbaserad säkerhet att göra, om du har skrivit en .NET Assembly som anropas av Excel så har jag för mig att den assemblyn måste ges "FullTrust" Permission Set genom att skapa en speciell kodgrupp. Titta på din utvecklingsdator i ".NET 2.0 Framework Configuration" och se om du kan hitta den kodgruppen.

Om det skulle kunna vara detta så ska jag försöka vara lite tydligare i nästa svar, sitter lite dumt till när jag skriver detta...


Svara

Sv:Jättekonstigt problem

Postades av 2008-01-04 11:34:43 - Martin Adrian

>Kan det ha med kodbaserad säkerhet att göra, om du har skrivit en .NET Assembly som anropas av
>Excel så har jag för mig att den assemblyn måste ges "FullTrust" Permission

Jag funderade också på det men grävde inte så djupt i det av flera anledningar:
1. Kodbaserad säkerhet gäller enbart i .Net. Excel/VBA ansluter till ett COM objekt som i sin tur öppnar en .Net assembly. Det är ju samma COM hostingprocess som används oavsett om man ansluter från Exel/VBA eller VBScript.
2. Om det är ett säkerhetsproblem skulle det ju generera ett security exception och inte stänga av datorn.


Svara

Sv: Jättekonstigt problem

Postades av 2008-01-04 12:35:55 - Niklas Jansson

Men hur gick det med CreateObject?

Har du VB6?
Vad händer om du i så fall testar med early binding i ett VB6-program, borde ju bli identiskt resultat?


Svara

Sv:Jättekonstigt problem

Postades av 2008-01-05 13:56:04 - Martin Rex

Har du assemblerat din DLL till en TLB-fil ?
Den ska ligga i win32 och i Excell's exe-map om jag inte minns fel.

/Martin


Svara

Sv: Jättekonstigt problem

Postades av 2008-01-25 15:25:46 - Martin Adrian

Efter hur mycket jobb som helst så har jag hittat felet.

Det som ledde mig på spåret var att jag hade en dialogruta i installationsprogrammet som visades ibland. En kund rapporterade att denna dialogruta visades precis innan datorn stängdes av.

Det var alltså windows installer som stängde av datorn! (brydde mig inte om att ta reda på varför)

Jag provade då att installera min assembly manuellt med regasm. Resultatet blev precis detsamma (dvs fungerar från VS och vbscript men ej från Excel) men datorn stängdes inte av.

Googlade på regasm, excel mm och hittade såsmåningom några som hade liknande problem.

Lösningen var att installera en obskyr officepatch med namnet KB908002 <url>http://support.microsoft.com/kb/908002/</url>.

Problemet finns i alla officeversioner till och med 2003.


Svara

Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

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 569 153
27 952
271 704
1 241
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