Det här borde gå bättre:
vbc /t:library /out:h:\Compiled\LocalData.dll /r:system.dll /r:system.data.dll /r:system.XML.dll LL.vb
7 svar · 331 visningar · startad av erka
Hej!
Ska försöka kompilera en vb fil till en dll som ska användas som ett namespace.
skickar med en text fil med det som ska kompileras, hur jag än försöker så säger vbc'n att tex "Could not find library, system.data.sqlclient" och andra sådana.
jag försöker kompilera med följande kommando.
vbc /t:library /out:h:\Compiled\LocalData.dll /r:system.dll /r:system.dll /r:system.data.dll /r:system.data.configuration.dll /r:System.Data.SqlClient.dll /r:System.Data.SqlClient.dll LL.vb
Någon som kan hjälpa en kompileringsnoobie ;)
Det här borde gå bättre:
vbc /t:library /out:h:\Compiled\LocalData.dll /r:system.dll /r:system.data.dll /r:system.XML.dll LL.vb
TACK!
Jag har en påbyggnadsfråga.
Jag kompilerar denna vb fil, den ska ha hand om generelladatabasfunktioner. Sedan har jag 2 andra klasser som hör till mitt affärslager och ska kompileras till en gemensam dll, det är classerna "businessLayerForums"
"businessDataLayerForums" som ni hittar under klassen "businessDataLayerForums" i
http://www.webforum.nu/attachment.php?s=&postid=534095
Fråga1:
I klassen "businessDataLayerForums" i den filen så ärver den från "dataAccessLayer" som jag fick hjälp med att kompilera här ovan. Som det är nu när jag hade dem i samma fil skrev man bara "Inherits dataAccessLayer" men jag antar att jag måste ändra det nu när den ligger i en annan dll. Hur skriver man då ?
Tacksam
Är det bara att importera det första (databashanteringen) namespacet i toppen av det nya namespacet, dll:en och sedan skriva "Inherits LL.DataAccess.dataAccessLayer", där det tidigare stod "Inherits dataAccessLayer". Namnet på databashanterings namespacet är "LL.DataAccess".
När jag nu försöker göra det säger compilern att den inte kan hitta namespacet LL.DataAccess.dll, den hittar inte libraryt. Jag skicker ju med /r:LL.DataAccess.dll i kommandot för att kompilera min nya dll.
Jag har skapat en bin katalog i min applikation och slängt in LL.DataAccess.dll, måste man göra något mer ?
Tacksam
Nu har jag inte .NET installerat på den här maskinen så jag kan inte testa, men ett par grejer ..
Om du importerar namespacet LL.DataAccess så ska det räcka med att skriva Inherits dataAccessLayer. (Det är ju just därför du importerar namespacet.)
Jag skicker ju med /r:LL.DataAccess.dll i kommandot för att kompilera min nya dll.
Ja, men så heter väl inte dll:en? Ovan heter den ju LocalData.dll.
I övrigt vad gäller sökvägar så ska det räcka om de lib (dll:er) du länkar till ligger i samma mapp eller den globala cachen, har jag för mig.
Ursäkta mig för min snurrighet just nu, rätt ny på detta :) tack
vbc /t:library /out:bin/fnamn.dll /r:System.dll /r:System.Data.dll /r:System.Xml.dll /r:System.Web.dll /r:Microsoft.Data.Odbc.dll fnamn.*.vb
fnamn = företagsnamnet eller dyligt
* tar alla filer