/ 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
Enum i egen dll fil
Fra : Jesper Harder


Dato : 23-04-02 06:51

Hej Gruppe!

Jeg er ved at udvikle noget ASP til bruger administration.
I den forbindelse er jeg kommet til IIS delen.

Jeg har brug for at lave en DLL til at udlæse div. data fra en given IIS
server. web-dir, ftp m.m.
Med disse data skal jeg så kunne vælge en placering og, der oprette nyt.

Jeg kan sagtens i Visual Basic lave en Enum, altså For each .... Next.

Hvordan laver man sådan en kode når jeg skal have min DLL som "mellem mand"
?

ASP-VB script laver kald til ---- DLL, som så laver kald til --- IIS.
Min ASP kommer så til at se ud som For each obj in MinDLL ..... Next.

Jeg er ikke den store haj, så et lille kode eksempel på denne
funktionalitet, ville være rart.

Alle maskiner er Windows 2000.


Med venlig hilsen

Jesper Harder



 
 
Niels G (23-04-2002)
Kommentar
Fra : Niels G


Dato : 23-04-02 09:37

Her er et eksempel på hvordan man laver en Collection klasse.
Det vigtigste at kikke på er: NewEnum og bemærk
de kommentarer der står ved den.

===============================
Klasse: CollectionKlasse
===============================

Option Explicit

Private mCol As Collection

Private Sub Class_Initialize()
Set mCol = New Collection
End Sub

Public Sub Add(item As ItemKlasse) ' Evt tilføje Key
mCol.Add item
End Sub

Public Function NewEnum() As IUnknown
' For denne funktion skal der gøres følgende:
' I Tools->Procedure Attributes
' Ved 'Name' vælges 'NewEnum'
' Klik Advanced og vælg der 'Hide this member'
' I 'Procedure ID' skriv der -4 (minus fire)
Set NewEnum = mCol.[_NewEnum]
End Function

===============================
Klasse: ItemKlasse
===============================

Option Explicit
' Denne klasse kan man udforme som man vil.
' Bemærk at Add funktionen i CollectionKasse
' bruger klassen, det samme vil en evt. Item
' property gøre.

Public Sub DoSomething()
Debug.Print Time$
End Sub

===============================
Test eksempel:
===============================


Dim oCol As CollectionKlasse
Dim oItem As ItemKlasse

Set oCol = New CollectionKlasse

' Test data
Set oItem = New ItemKlasse
oCol.Add oItem
Set oItem = New ItemKlasse
oCol.Add oItem
Set oItem = New ItemKlasse
oCol.Add oItem

For Each oItem In oCol
oItem.DoSomething
Next


- Niels G.


"Jesper Harder" <jh@spammmmmmers.gts.dk> wrote in message
news:aa2sol$e7e$1@news.net.uni-c.dk...
> Hej Gruppe!
>
> Jeg er ved at udvikle noget ASP til bruger administration.
> I den forbindelse er jeg kommet til IIS delen.
>
> Jeg har brug for at lave en DLL til at udlæse div. data fra en given IIS
> server. web-dir, ftp m.m.
> Med disse data skal jeg så kunne vælge en placering og, der oprette nyt.
>
> Jeg kan sagtens i Visual Basic lave en Enum, altså For each .... Next.
>
> Hvordan laver man sådan en kode når jeg skal have min DLL som "mellem
mand"
> ?
>
> ASP-VB script laver kald til ---- DLL, som så laver kald til --- IIS.
> Min ASP kommer så til at se ud som For each obj in MinDLL ..... Next.
>
> Jeg er ikke den store haj, så et lille kode eksempel på denne
> funktionalitet, ville være rart.
>
> Alle maskiner er Windows 2000.
>
>
> Med venlig hilsen
>
> Jesper Harder
>
>



news.cybercity.dk (23-04-2002)
Kommentar
Fra : news.cybercity.dk


Dato : 23-04-02 22:07

Hej Niels

Tak for vejledningen!
Ville du have noget imod, at steppe mig gennem et kodestykke?
Så vil jeg poste en simpel kode, der virker med For each, som du så kunne
hjælpe mig at nedbryde til div. klasser.
Min egen logik og forståelse komme noget til kort, med flere af de
termilogier du har give mig.
Som jeg forstår det, så skal min simple Function nedbrydes i flere sub
rutiner og et eller flere hoved moduler ?

Jeg vedlægger alligevel koden, som virker direkte:

Option Explicit

Public Function EnumIISweb(strServer As String)
Dim objParent As Object
Dim objChild As Object
Dim ProgrammaticID As String
Dim FriendlyName As String
Dim Count As Long
Dim a As Long

Set objParent = GetObject("IIS://" & strServer & "/W3SVC")
For Each objChild In objParent
If IsNumeric(objChild.Name) Then
'Her er det jeg gerne vil have en eller flere værdier hentet ud fra min dll.
Debug.Print objChild.Name
Debug.Print objChild.ServerComment
End If
Next
End Function

Med venlig hilsen

Jesper Harder

"Niels G" <ng@kmd.dk> skrev i en meddelelse
news:3cc51d2d$0$269$edfadb0f@dspool01.news.tele.dk...
> Her er et eksempel på hvordan man laver en Collection klasse.
> Det vigtigste at kikke på er: NewEnum og bemærk
> de kommentarer der står ved den.
>
> ===============================
> Klasse: CollectionKlasse
> ===============================
>
> Option Explicit
>
> Private mCol As Collection
>
> Private Sub Class_Initialize()
> Set mCol = New Collection
> End Sub
>
> Public Sub Add(item As ItemKlasse) ' Evt tilføje Key
> mCol.Add item
> End Sub
>
> Public Function NewEnum() As IUnknown
> ' For denne funktion skal der gøres følgende:
> ' I Tools->Procedure Attributes
> ' Ved 'Name' vælges 'NewEnum'
> ' Klik Advanced og vælg der 'Hide this member'
> ' I 'Procedure ID' skriv der -4 (minus fire)
> Set NewEnum = mCol.[_NewEnum]
> End Function
>
> ===============================
> Klasse: ItemKlasse
> ===============================
>
> Option Explicit
> ' Denne klasse kan man udforme som man vil.
> ' Bemærk at Add funktionen i CollectionKasse
> ' bruger klassen, det samme vil en evt. Item
> ' property gøre.
>
> Public Sub DoSomething()
> Debug.Print Time$
> End Sub
>
> ===============================
> Test eksempel:
> ===============================
>
>
> Dim oCol As CollectionKlasse
> Dim oItem As ItemKlasse
>
> Set oCol = New CollectionKlasse
>
> ' Test data
> Set oItem = New ItemKlasse
> oCol.Add oItem
> Set oItem = New ItemKlasse
> oCol.Add oItem
> Set oItem = New ItemKlasse
> oCol.Add oItem
>
> For Each oItem In oCol
> oItem.DoSomething
> Next
>
>
> - Niels G.
>
>
> "Jesper Harder" <jh@spammmmmmers.gts.dk> wrote in message
> news:aa2sol$e7e$1@news.net.uni-c.dk...
> > Hej Gruppe!
> >
> > Jeg er ved at udvikle noget ASP til bruger administration.
> > I den forbindelse er jeg kommet til IIS delen.
> >
> > Jeg har brug for at lave en DLL til at udlæse div. data fra en given IIS
> > server. web-dir, ftp m.m.
> > Med disse data skal jeg så kunne vælge en placering og, der oprette nyt.
> >
> > Jeg kan sagtens i Visual Basic lave en Enum, altså For each .... Next.
> >
> > Hvordan laver man sådan en kode når jeg skal have min DLL som "mellem
> mand"
> > ?
> >
> > ASP-VB script laver kald til ---- DLL, som så laver kald til --- IIS.
> > Min ASP kommer så til at se ud som For each obj in MinDLL ..... Next.
> >
> > Jeg er ikke den store haj, så et lille kode eksempel på denne
> > funktionalitet, ville være rart.
> >
> > Alle maskiner er Windows 2000.
> >
> >
> > Med venlig hilsen
> >
> > Jesper Harder
> >
> >
>
>



Niels (24-04-2002)
Kommentar
Fra : Niels


Dato : 24-04-02 22:02

Hej Jesper

Jeg er kommet lidt i tvivl om, hvad dit problem egenligt er.
Og derfor tvivler jeg lidt på hvor relevant min første posting
var.

- Niels G


"news.cybercity.dk" <jesper@harder.news.cybercity.dk> wrote in message
news:aa4i0u$2icj$1@news.cybercity.dk...
> Hej Niels
>
> Tak for vejledningen!
> Ville du have noget imod, at steppe mig gennem et kodestykke?
> Så vil jeg poste en simpel kode, der virker med For each, som du så kunne
> hjælpe mig at nedbryde til div. klasser.
> Min egen logik og forståelse komme noget til kort, med flere af de
> termilogier du har give mig.
> Som jeg forstår det, så skal min simple Function nedbrydes i flere sub
> rutiner og et eller flere hoved moduler ?
>
> Jeg vedlægger alligevel koden, som virker direkte:
>
> Option Explicit
>
> Public Function EnumIISweb(strServer As String)
> Dim objParent As Object
> Dim objChild As Object
> Dim ProgrammaticID As String
> Dim FriendlyName As String
> Dim Count As Long
> Dim a As Long
>
> Set objParent = GetObject("IIS://" & strServer & "/W3SVC")
> For Each objChild In objParent
> If IsNumeric(objChild.Name) Then
> 'Her er det jeg gerne vil have en eller flere værdier hentet ud fra min
dll.
> Debug.Print objChild.Name
> Debug.Print objChild.ServerComment
> End If
> Next
> End Function
>
> Med venlig hilsen
>
> Jesper Harder
>
> "Niels G" <ng@kmd.dk> skrev i en meddelelse
> news:3cc51d2d$0$269$edfadb0f@dspool01.news.tele.dk...
> > Her er et eksempel på hvordan man laver en Collection klasse.
> > Det vigtigste at kikke på er: NewEnum og bemærk
> > de kommentarer der står ved den.
> >
> > ===============================
> > Klasse: CollectionKlasse
> > ===============================
> >
> > Option Explicit
> >
> > Private mCol As Collection
> >
> > Private Sub Class_Initialize()
> > Set mCol = New Collection
> > End Sub
> >
> > Public Sub Add(item As ItemKlasse) ' Evt tilføje Key
> > mCol.Add item
> > End Sub
> >
> > Public Function NewEnum() As IUnknown
> > ' For denne funktion skal der gøres følgende:
> > ' I Tools->Procedure Attributes
> > ' Ved 'Name' vælges 'NewEnum'
> > ' Klik Advanced og vælg der 'Hide this member'
> > ' I 'Procedure ID' skriv der -4 (minus fire)
> > Set NewEnum = mCol.[_NewEnum]
> > End Function
> >
> > ===============================
> > Klasse: ItemKlasse
> > ===============================
> >
> > Option Explicit
> > ' Denne klasse kan man udforme som man vil.
> > ' Bemærk at Add funktionen i CollectionKasse
> > ' bruger klassen, det samme vil en evt. Item
> > ' property gøre.
> >
> > Public Sub DoSomething()
> > Debug.Print Time$
> > End Sub
> >
> > ===============================
> > Test eksempel:
> > ===============================
> >
> >
> > Dim oCol As CollectionKlasse
> > Dim oItem As ItemKlasse
> >
> > Set oCol = New CollectionKlasse
> >
> > ' Test data
> > Set oItem = New ItemKlasse
> > oCol.Add oItem
> > Set oItem = New ItemKlasse
> > oCol.Add oItem
> > Set oItem = New ItemKlasse
> > oCol.Add oItem
> >
> > For Each oItem In oCol
> > oItem.DoSomething
> > Next
> >
> >
> > - Niels G.
> >
> >
> > "Jesper Harder" <jh@spammmmmmers.gts.dk> wrote in message
> > news:aa2sol$e7e$1@news.net.uni-c.dk...
> > > Hej Gruppe!
> > >
> > > Jeg er ved at udvikle noget ASP til bruger administration.
> > > I den forbindelse er jeg kommet til IIS delen.
> > >
> > > Jeg har brug for at lave en DLL til at udlæse div. data fra en given
IIS
> > > server. web-dir, ftp m.m.
> > > Med disse data skal jeg så kunne vælge en placering og, der oprette
nyt.
> > >
> > > Jeg kan sagtens i Visual Basic lave en Enum, altså For each .... Next.
> > >
> > > Hvordan laver man sådan en kode når jeg skal have min DLL som "mellem
> > mand"
> > > ?
> > >
> > > ASP-VB script laver kald til ---- DLL, som så laver kald til --- IIS.
> > > Min ASP kommer så til at se ud som For each obj in MinDLL ..... Next.
> > >
> > > Jeg er ikke den store haj, så et lille kode eksempel på denne
> > > funktionalitet, ville være rart.
> > >
> > > Alle maskiner er Windows 2000.
> > >
> > >
> > > Med venlig hilsen
> > >
> > > Jesper Harder
> > >
> > >
> >
> >
>
>



Jesper Harder (25-04-2002)
Kommentar
Fra : Jesper Harder


Dato : 25-04-02 06:53

Mit problem er at jeg via ASP skal hente og skrive oplysninger til flere
IIS5.0 servere i mit domain.
Den vedlagte kode virker fint på den IIS der hoster koden men når den skal
hente fra en anden får jeg en adgang nægtet.
Jeg kører koden som Administrator, men det er ikke helt nok her.
Hvis jeg der imod laver mig en DLL af samme kode og f.eks. sender en Array
retur med svaret i, så kan koden godt afvikles. DLL filen bliver installeret
med Administrator rettigheder.

Det er grunden til at jeg ønsker denne funktionalitet, men det kan jo være
at der er noget der er meget nemmere end det jeg tror jeg skal ??

Og tak for at prøver at hjælpe


Med venlig hilsen

Jesper Harder


"Niels" <ng@blommelundenNOspam.dk> skrev i en meddelelse
news:z3Fx8.2856$HZ2.303719@news000.worldonline.dk...
> Hej Jesper
>
> Jeg er kommet lidt i tvivl om, hvad dit problem egenligt er.
> Og derfor tvivler jeg lidt på hvor relevant min første posting
> var.
>
> - Niels G
>
>
> "news.cybercity.dk" <jesper@harder.news.cybercity.dk> wrote in message
> news:aa4i0u$2icj$1@news.cybercity.dk...
> > Hej Niels
> >
> > Tak for vejledningen!
> > Ville du have noget imod, at steppe mig gennem et kodestykke?
> > Så vil jeg poste en simpel kode, der virker med For each, som du så
kunne
> > hjælpe mig at nedbryde til div. klasser.
> > Min egen logik og forståelse komme noget til kort, med flere af de
> > termilogier du har give mig.
> > Som jeg forstår det, så skal min simple Function nedbrydes i flere sub
> > rutiner og et eller flere hoved moduler ?
> >
> > Jeg vedlægger alligevel koden, som virker direkte:
> >
> > Option Explicit
> >
> > Public Function EnumIISweb(strServer As String)
> > Dim objParent As Object
> > Dim objChild As Object
> > Dim ProgrammaticID As String
> > Dim FriendlyName As String
> > Dim Count As Long
> > Dim a As Long
> >
> > Set objParent = GetObject("IIS://" & strServer & "/W3SVC")
> > For Each objChild In objParent
> > If IsNumeric(objChild.Name) Then
> > 'Her er det jeg gerne vil have en eller flere værdier hentet ud fra min
> dll.
> > Debug.Print objChild.Name
> > Debug.Print objChild.ServerComment
> > End If
> > Next
> > End Function
> >
> > Med venlig hilsen
> >
> > Jesper Harder
> >
> > "Niels G" <ng@kmd.dk> skrev i en meddelelse
> > news:3cc51d2d$0$269$edfadb0f@dspool01.news.tele.dk...
> > > Her er et eksempel på hvordan man laver en Collection klasse.
> > > Det vigtigste at kikke på er: NewEnum og bemærk
> > > de kommentarer der står ved den.
> > >
> > > ===============================
> > > Klasse: CollectionKlasse
> > > ===============================
> > >
> > > Option Explicit
> > >
> > > Private mCol As Collection
> > >
> > > Private Sub Class_Initialize()
> > > Set mCol = New Collection
> > > End Sub
> > >
> > > Public Sub Add(item As ItemKlasse) ' Evt tilføje Key
> > > mCol.Add item
> > > End Sub
> > >
> > > Public Function NewEnum() As IUnknown
> > > ' For denne funktion skal der gøres følgende:
> > > ' I Tools->Procedure Attributes
> > > ' Ved 'Name' vælges 'NewEnum'
> > > ' Klik Advanced og vælg der 'Hide this member'
> > > ' I 'Procedure ID' skriv der -4 (minus fire)
> > > Set NewEnum = mCol.[_NewEnum]
> > > End Function
> > >
> > > ===============================
> > > Klasse: ItemKlasse
> > > ===============================
> > >
> > > Option Explicit
> > > ' Denne klasse kan man udforme som man vil.
> > > ' Bemærk at Add funktionen i CollectionKasse
> > > ' bruger klassen, det samme vil en evt. Item
> > > ' property gøre.
> > >
> > > Public Sub DoSomething()
> > > Debug.Print Time$
> > > End Sub
> > >
> > > ===============================
> > > Test eksempel:
> > > ===============================
> > >
> > >
> > > Dim oCol As CollectionKlasse
> > > Dim oItem As ItemKlasse
> > >
> > > Set oCol = New CollectionKlasse
> > >
> > > ' Test data
> > > Set oItem = New ItemKlasse
> > > oCol.Add oItem
> > > Set oItem = New ItemKlasse
> > > oCol.Add oItem
> > > Set oItem = New ItemKlasse
> > > oCol.Add oItem
> > >
> > > For Each oItem In oCol
> > > oItem.DoSomething
> > > Next
> > >
> > >
> > > - Niels G.
> > >
> > >
> > > "Jesper Harder" <jh@spammmmmmers.gts.dk> wrote in message
> > > news:aa2sol$e7e$1@news.net.uni-c.dk...
> > > > Hej Gruppe!
> > > >
> > > > Jeg er ved at udvikle noget ASP til bruger administration.
> > > > I den forbindelse er jeg kommet til IIS delen.
> > > >
> > > > Jeg har brug for at lave en DLL til at udlæse div. data fra en given
> IIS
> > > > server. web-dir, ftp m.m.
> > > > Med disse data skal jeg så kunne vælge en placering og, der oprette
> nyt.
> > > >
> > > > Jeg kan sagtens i Visual Basic lave en Enum, altså For each ....
Next.
> > > >
> > > > Hvordan laver man sådan en kode når jeg skal have min DLL som
"mellem
> > > mand"
> > > > ?
> > > >
> > > > ASP-VB script laver kald til ---- DLL, som så laver kald til ---
IIS.
> > > > Min ASP kommer så til at se ud som For each obj in MinDLL .....
Next.
> > > >
> > > > Jeg er ikke den store haj, så et lille kode eksempel på denne
> > > > funktionalitet, ville være rart.
> > > >
> > > > Alle maskiner er Windows 2000.
> > > >
> > > >
> > > > Med venlig hilsen
> > > >
> > > > Jesper Harder
> > > >
> > > >
> > >
> > >
> >
> >
>
>



Søg
Reklame
Statistik
Spørgsmål : 177557
Tips : 31968
Nyheder : 719565
Indlæg : 6408885
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste