/ 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
DLL Helvedet
Fra : Bjarne Østergård


Dato : 29-09-01 20:12

Hej gutter:

Jeg tror jeg er ved at få pip i låget og/eller blive sær samt skør,
herudover er jeg ved at udarbejde en eller anden DLL overfølsomhed.
Desuden er der tydelige symptomer på begyndende og stærkt accelererende OS .
forbier, og det endda i væsentlig grad.

Først OS forbierne og hvordan det startede (I fredags)

Jeg har endeligt og lige fået råd til at indkøbe en ny maskine til firmaet
til udviklings opgaver, og nu da der skulle være fest så skulle det
selvfølgeligt være med den sidste nye Win 2000 Prof og med et NTFS. format
på disken.
Fat 32 er jo yt.

Nu havde jeg så lavet et stykke software i VB6 som jeg lige skulle blære mig
af og derfor sendte jeg det ud på det lokale net, med beskeden, "Gidder i
teste dette program, MVH. Bjarne"

Det skulle jeg aldrig havde gjort!!!

De afdelinger jeg sendte det til kørte med Win 98 og ME.

Først kunne de ikke afvikle programmet pga.at der manglede forskellige dll.
og Ocx at blive registreret.

Men bare rolig fokls.
Bjarne fra software udviklingsafdelingen er jo sej og giver ikke op så let.

Bjarne klarer da lige det, for så kunne jeg jo også lige blære mig med den
sidst nye indkøbte Installshield.3.5 (3400,00 Kr)

Så jeg lavede fluks en installations fil og rundsendte denne så kunne folk
via lokalnette installere mit nye og smarte program Vups og så skulle alle
på intranettet have det kørende.

UHA UHA og så meget UHA endda. (Min fyraften blev pludselig udskudt til
engang langt ud i den uvisse fremtid.)

Samtlige maskiner gik i sort, eller nærmest blegsort.

Outlook begyndte at tale og skrive et helt nyt sprog en slags sammenblanding
af Ennelgsk og Dansk (Daelsk)

Alle linjer ud af huset var pist væk på nær min maskines. På min Win 2000
med Format NTFS virkede alt som det skulle.
Men det var den eneskt maskine i virksomheden der virkede.

Alle andre fik en haglbyge af fejlbokse hver gang de forsøgte at starte
noget som helst.

Den og den DLL fandtes ikke eller kunne ikke registreres osv. osv osv.

Heldigvis har jeg tittel af direktør og chef, så ingen smed mig ud af
vinduet, og heldigvis har jeg søde og smilende medarbejdere og kollegaer, så
de tog det pænt.

"Nå men så kan vi jo lige så godt holde fyraften, vi kan jo ikke lave noget
som helst alligeve. Men du har vel maskinerne oppe at køre igen inden mandag
morgen Bjarne. Kan du nu have en god weekwend og hils hjemme."

Ja det var ordene, og det kunne de jo sagten sige, for sandheden er den, at
jeg nu ikke kunne tage hjem.

Nå nu er klokken 2100 Lørdag aften og jeg mangler nu heldigvis kun nogle
test, som jeg vil lave i morgen så skulle alle være oppe at køre igen.

Nu er mit spørgsmål blot.
Hvad i hele hule DLL gjorde jeg forkert????

Er programmer udviklet i VB 6 ikke bagud kompatibel hvis de udvikles på en
WIN 2000 Prof og på et NTFS format.

For det samme program laver ingen skade hvis jeg flytter hele koden til en
maskine med Win 98 og så herfra laver en setup.
Hvad har jeg overset????

Med venlig hilsen
Bjarne Østergård
Gigasoft Denmark






















 
 
Allan R. (29-09-2001)
Kommentar
Fra : Allan R.


Dato : 29-09-01 20:39

Fed Sci-Fi cybergyser... må jeg ikke lige se koden og få filen.. så tror jeg
at jeg kan finde problemet...
Du skulle da også normalt bare sende MSVBVM60.DLL sammen med programmet, da
andre installerede programmer vist har installeret resten... du kunne jo
også bare have sendt VB6runtime installeren med...
Vil du lade mig checke programmet?



Tomas Christiansen (29-09-2001)
Kommentar
Fra : Tomas Christiansen


Dato : 29-09-01 22:50

Bjarne Østergård skrev:
> Jeg tror jeg er ved at få pip i låget og/eller blive sær samt skør,
> herudover er jeg ved at udarbejde en eller anden DLL overfølsomhed.

En lille trøst: Det skulle blive bedre i fremtiden - så er
installering blot en kopiering af filer til et program-bibliotek. Ikke
noget med at udskifte filer i systembiblioteket (jeg VIL nu se det
ført jeg rigtigt tror på det).

> De afdelinger jeg sendte det til kørte med Win 98 og ME.
>
> Først kunne de ikke afvikle programmet pga.at der manglede
forskellige dll.
> og Ocx at blive registreret.

Det interessante er jo netop HVILKE dll'er og ocx'er som de ikke
havde - eller som de havde, men i en for gammel version!

Mit bud er at det er her problemet ligger. Du har ganske enkelt fået
udskiftet en, for selve operativ-systemet, vigtig dll, og du har fået
udskiftet med en version, som kun virker under Windows 2000.

> Bjarne klarer da lige det, for så kunne jeg jo også lige blære mig
med den
> sidst nye indkøbte Installshield.3.5 (3400,00 Kr)
>
> Så jeg lavede fluks en installations fil og rundsendte denne så
kunne folk
> via lokalnette installere mit nye og smarte program Vups og så
skulle alle
> på intranettet have det kørende.

Nu kender jeg ikke InstallShield, men mon ikke der er en mulighed for
at kigge på hvad der er kommet med i installationspakken?
Kig også lige i dit eget VB-program under Project, References og
Project, Components. Alt hvad der er krydset af her, kommer ihvertfald
med i pakken.

A: Prøv evt. at fjerne alle hakker minus ét.
B: Dan installationspakke. Installer på en Win95 PC. Check om den
kører stabilt. Hvis nej gå til D.
C: Sæt ét til af de oprindelige hakker. Gå til B.
D: Det sidste hak, som du satte må være synderen! Se under Project,
References eller Project, Components hvad dll'en hedder.
E: Find filen i Explorer (stifinder) på din Windows 2000 PC og på et
par af de øvrige for at se om versionerne passer sammen. Søg evt.
efter navnet på dll'en hos Microsoft, for at se om der skulle være
nogle noter angående eventuelle
operativsysteminkompatibilitetsproblemer.

-------
Tomas


Tomas Christiansen (29-09-2001)
Kommentar
Fra : Tomas Christiansen


Dato : 29-09-01 22:59

Bjarne Østergård
> Så jeg lavede fluks en installations fil og rundsendte denne så
kunne folk
> via lokalnette installere mit nye og smarte program Vups og så
skulle alle
> på intranettet have det kørende.

En anden ting, jeg lige kom til at tænke på, var: Hvilken Service Pack
til Visual Basic bruger du på de to computere som du har udviklet fra?

-------
Tomas


Bjarne Oestergaard (04-10-2001)
Kommentar
Fra : Bjarne Oestergaard


Dato : 04-10-01 09:38


Hej alle og tak for svarrene

Jeg har fundet fejlen og ulykkens årsag.

Mit installations program installerede og erstattede nogle DLL filer på win
98 med nogle fra NT.

Jeg vælger nu at lave to eller flere versioner af programmet i stedet for.

Simpelt hen en installation til hver sit OS.

Med venlig hilsen
Bjarne



Tomas Christiansen (04-10-2001)
Kommentar
Fra : Tomas Christiansen


Dato : 04-10-01 22:11

Bjarne Oestergaard skrev:
> Jeg har fundet fejlen og ulykkens årsag.
>
> Mit installations program installerede og erstattede nogle DLL filer
på win
> 98 med nogle fra NT.

Burde du ikke - set i bagklogskabens ulidelig klare lys - informere
gruppen om HVILKE dll'er som det drejer sig om, og som dermed er
potentielt "farlige"?

-------
Tomas


Bjarne Østergård (07-10-2001)
Kommentar
Fra : Bjarne Østergård


Dato : 07-10-01 16:16


"Tomas Christiansen" <toc@blikroer.removethis.dk> wrote in message
news:9pijcu$2se9$1@news.cybercity.dk...
> Bjarne Oestergaard skrev:
> > Jeg har fundet fejlen og ulykkens årsag.
> >
> > Mit installations program installerede og erstattede nogle DLL filer
> på win
> > 98 med nogle fra NT.
>
> Burde du ikke - set i bagklogskabens ulidelig klare lys - informere
> gruppen om HVILKE dll'er som det drejer sig om, og som dermed er
> potentielt "farlige"?

Jo og det vil jeg også gøre, men jeg har knapt endnu helt selv styr på
hvilken det var, ser faktisk ud til at det var næsten dem alle sammen.

Problemet er også at dll filer ikke placeres i samme bibliotek på Win 98 og
win 2000.

Altså er de forskellige kald til og fra dll og Ocx objekterne blevet smadret
da de ikke kalder samme sti.

laver man en Installation fra Win 98 vil filerne typisk lægge sig under
Windows/system
Men i 2000 hedde det vist nok winnt/system32
Jeg arbejder på at lave en rutine der først tjekker OS og derefter ud fra
ressultatet vælger installations fil.

Det jeg gør er at lave en parallel programmering således at jeg laver en
udvikling og installation fra et system til samme system.

Altså et program udviklet på Win 2000 bliver også lavet til kun at køre på
samme system. parallelt hermed laver jeg så samme program og installations
filer fra og til Win 98 , ME. XP, osv osv.

Jeg tror det er den sikreste metode.

Mvh
Bjarne Østergård









Tomas Christiansen (07-10-2001)
Kommentar
Fra : Tomas Christiansen


Dato : 07-10-01 21:53

Bjarne Østergård skrev:
> Jo og det vil jeg også gøre, men jeg har knapt endnu helt selv styr

> hvilken det var, ser faktisk ud til at det var næsten dem alle
sammen.

Okay? Det lyder umiddelbart ret utroligt. Jeg kan forstå hvis det
drejer sig om en enkelt eller to.

> laver man en Installation fra Win 98 vil filerne typisk lægge sig
under
> Windows/system
> Men i 2000 hedde det vist nok winnt/system32
> Jeg arbejder på at lave en rutine der først tjekker OS og derefter
ud fra
> ressultatet vælger installations fil.

Det lyder som en meget bagvendt måde at gøre tingene på.
Microsoft har jo allerede taget højde for den slags, ved at levere
API, som kan fortælle hvad Windows biblioteket og hvad Windows-system
biblioteket hedder.
Jeg har godt nok aldrig hørt om en installer, som ikke skulle kunne
finde ud af den slags. Selv "Package & Deployment Wizard" kan finde ud
af det som standard, blot man ikke går ind og "hard-koder" stierne til
dll'erne, men beholder de navne, som den selv foreslår (f.eks. noget
med "$(WinSysPathSysFile)").

> Altså et program udviklet på Win 2000 bliver også lavet til kun at
køre på
> samme system. parallelt hermed laver jeg så samme program og
installations
> filer fra og til Win 98 , ME. XP, osv osv.

Hvis du tager sådan en pakke fra f.eks. Win98 og fra Win2K og
sammenligner indholdet - har du så ikke synderen: Den (eller de) dll
som ikke ens i de to pakker (forudsat at begge operativsystemer er i
samme opdateringsstand mht. de involverede dll'er, samt at det er
præcis det samme program, som man propper ind i pakken).

-------
Tomas


Bjarke Walling Peter~ (08-10-2001)
Kommentar
Fra : Bjarke Walling Peter~


Dato : 08-10-01 18:51

Bjarne Østergård skrev:
> laver man en Installation fra Win 98 vil filerne typisk lægge sig under
> Windows/system
> Men i 2000 hedde det vist nok winnt/system32
> Jeg arbejder på at lave en rutine der først tjekker OS og derefter ud fra
> ressultatet vælger installations fil.

Måske er det bare mig, men jeg synes dette er en utrolig uholdbar løsning.
Du ved jo ikke hvilket bibliotek windows er installeret i. Jeg kunne
teoretisk set have installeret det i Q:\MitStyresystem eller lignende (hvis
jeg havde lyst til det).
Desuden synes jeg at det er lidt mere besværligt først at tjekke hvilken OS
og derefter "finde" stien ud fra det. Det er da meget nemmere at gøre det i
første forsøg - bare hente stien.
Her er api til at få fat i system-mappens sti:

Declare Function GetSystemDirectory Lib "kernel32" Alias
"GetSystemDirectoryA" (ByVal lpBuffer As String, ByVal nSize As Long) As
Long

- Bjarke Walling Petersen



Peter I. Hansen (17-10-2001)
Kommentar
Fra : Peter I. Hansen


Dato : 17-10-01 02:23


"Bjarne Østergård" <boe@gigasoft.dk> wrote in message
news:3bc07207$0$259$edfadb0f@dspool01.news.tele.dk...
>
> "Tomas Christiansen" <toc@blikroer.removethis.dk> wrote in message
> news:9pijcu$2se9$1@news.cybercity.dk...
> > Bjarne Oestergaard skrev:
> > > Jeg har fundet fejlen og ulykkens årsag.
> > >
> > > Mit installations program installerede og erstattede nogle DLL filer
> > på win
> > > 98 med nogle fra NT.
> >
> > Burde du ikke - set i bagklogskabens ulidelig klare lys - informere
> > gruppen om HVILKE dll'er som det drejer sig om, og som dermed er
> > potentielt "farlige"?
>
> Jo og det vil jeg også gøre, men jeg har knapt endnu helt selv styr på
> hvilken det var, ser faktisk ud til at det var næsten dem alle sammen.
>
> Problemet er også at dll filer ikke placeres i samme bibliotek på Win 98
og
> win 2000.
>
> Altså er de forskellige kald til og fra dll og Ocx objekterne blevet
smadret
> da de ikke kalder samme sti.
>
> laver man en Installation fra Win 98 vil filerne typisk lægge sig under
> Windows/system
> Men i 2000 hedde det vist nok winnt/system32
> Jeg arbejder på at lave en rutine der først tjekker OS og derefter ud fra
> ressultatet vælger installations fil.
>
> Det jeg gør er at lave en parallel programmering således at jeg laver en
> udvikling og installation fra et system til samme system.
>
> Altså et program udviklet på Win 2000 bliver også lavet til kun at køre på
> samme system. parallelt hermed laver jeg så samme program og installations
> filer fra og til Win 98 , ME. XP, osv osv.
>
> Jeg tror det er den sikreste metode.
>
> Mvh
> Bjarne Østergård
>
Hehe....dette er en råsej gyser om en direktør der smasher medarbejdernes
computere - faktisk så sej at jeg har lyst til at blande mig.

Jeg tror ikke at jeg giver dig ret i at der er versionsforskel på diverse
Dll-filer fra Win2000 til Win98. Jeg har selv leget med programmer frem og
tilbage fra hjem til skole. Godt nok har det ikke været under Win2000 (men
WinXP som er NT5,1) og jeg erindre ikke at der har været fejl.
Noget andet er at jeg nok ikke ville foretrække InstallShield men VB6's egen
Setup-dims som hedder 'Package & Deployment Wizard' og ligger sammen med VB
i start-menuen (en hudfarvet kasse i 3D med to rektangler i rød og grøn ved
siden af). Dette lille udsøgte program fungere udemærket.

Mht.til det sidste så vil det altid være sådan at efter programmets
installation bliver der hentet oplysninger om Windowas placering, Windows'
System bibliotek med mere
(HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion)
Derfor skulle det ikke være noget problem at lokalisere de enkelte filer
bagefter.
Hilsen fra Peter Ingemnan Hansen
89253469



Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408847
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste