dev.gamez.lv Forum Index dev.gamez.lv
Latvian Game Developers Community
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups 

Nevēlama linkošanās pie citas DLL
Goto page 1, 2  Next
 
dev.gamez.lv Forum Index -> Programmēšana
View previous topic :: View next topic  
Author Message
DeRatizators



Joined: 27 Apr 2006
Posts: 492

PostPosted: Sun Nov 04, 2007 8:08 pm    Post subject: Nevēlama linkošanās pie citas DLL

šodien pamanīju ka manis veidotie DLL kaut kāda veidā salinkojas viens pie otra. Nevaru saprast kāda velna pēc tas notiek, jo setingos itkā nekā tāda nav:

/Od /Oi /I "D:\Project\voh_132\VoHCode\gui" /I "D:\Project\voh_132\DB\include" /I "D:\Project\voh_132\VoHCode\voh" /I "D:\Project\voh_132\VoHCode\dbtools" /I "D:\Project\voh_132\VoHCode\datas\\" /I "D:\Project\voh_132\VoHCode\controllers" /I "D:\Project\voh_132\VoHCode\core" /I "..\..\..\EngineCode" /I "..\..\..\SDK\Windows\DirectX9SDK\Include" /I "..\..\..\SDK\Windows\EAX20SDK\Include" /I "..\..\..\SDK\Windows\OpenGLSDK\Include" /I "..\..\..\SDK\Windows\OpenALSDK\Include" /I "..\..\..\SDK\Windows\QuickTime6SDK\Include" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_USRDLL" /D "C4WINDOWS" /D "C4DEBUG" /D "C4MODULE" /D "VOHMASTER" /D "_VC80_UPGRADE=0x0700" /D "_WINDLL" /D "_MBCS" /GF /Gm /EHsc /MTd /GS- /arch:SSE /fp:fast /GR- /Fo"Debug\\" /Fd"Debug\vc80.pdb" /W3 /nologo /c /Wp64 /Zi /TP /errorReport:prompt


Kādam jokam kodā ir jābūt, lai divos projektos kompilējamie DLL sapinas kopā ? Tas kam redzami settingi sapinas ar citu manu DLL un palaižot bļau pēc tā :]
Protams ka faili projektos par 80% ir vieni un tie paši.
Agrāk nebiju manījis, jo bieži mainīju serveru lomas un tā bija sagadījies ka tie DLL vienmēr bija līdzās un viss strādāja ok.
_________________
Any PANCAKE has to be long and thin and short and fat. Not to mention being an excellent insulator and a superb conductor.
Back to top
View user's profile
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Sun Nov 04, 2007 8:18 pm    Post subject:

ja tie DLL'i salinkojas, tad nebūtu prātīgāk meklēt atbildi linkera uzstādījumos?
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle
Back to top
View user's profile Visit poster's website
DeRatizators



Joined: 27 Apr 2006
Posts: 492

PostPosted: Sun Nov 04, 2007 8:21 pm    Post subject:

Godīgi sakot es vispār neizprotu izmantojot kādas telepātiskās spējas tas meklē to 2. DLL ar kuru saķerties (zin nosaukumu maita), wtf ?

Zin pat tad, kad es visam uztaisu Clean un nobildoju tikai 1 no abiem DLL + EXE...

Ahh tas "nevainīgais" DLL ir Master.dll , direktīva VOHMASTER viņa. Tas kuru meklē ir World.dll, direktīva VOHWORLD. Kā redzams settingos nekas neparādas no World daļas.
_________________
Any PANCAKE has to be long and thin and short and fat. Not to mention being an excellent insulator and a superb conductor.
Back to top
View user's profile
DeRatizators



Joined: 27 Apr 2006
Posts: 492

PostPosted: Sun Nov 04, 2007 8:24 pm    Post subject:

Linkera:

/OUT:"..\..\..\Master.dll" /INCREMENTAL /NOLOGO /DLL /MANIFEST /MANIFESTFILE:"Debug\Master.dll.intermediate.manifest" /DEBUG /PDB:"d:\Project\voh_132\Master.pdb" /SUBSYSTEM:WINDOWS /MACHINE:X86 /ERRORREPORT:PROMPT kernel32.lib user32.lib kernel32.lib
_________________
Any PANCAKE has to be long and thin and short and fat. Not to mention being an excellent insulator and a superb conductor.
Back to top
View user's profile
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Sun Nov 04, 2007 8:25 pm    Post subject:

iepostē linkera uzstādījumus
EDIT: tagad ieraudzīju
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle


Last edited by snake5 on Sun Nov 04, 2007 8:43 pm; edited 1 time in total
Back to top
View user's profile Visit poster's website
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Sun Nov 04, 2007 8:28 pm    Post subject:

DLL failus pielinkot, cik zinu, var divos veidos:
1) uzstādot linkera opcijās, lai linko klāt .lib failu, kurā iekšā ir norādīts dll fails pie kura jālinkojas.
2) lietojot #pragma comment(lib, "fails.lib") direktīvu iekš jebkura .cpp/.h faila.

Ja nezini kas un kā, tad apskati, kādu tieši funkciju/klasi/mainīgo tas Master.dll fails importē no World.dll (cik sapratu tā nav jābūt) un tad parādi rindiņu no sources, kurā šis simbols (funkcija vai mainīgais) tiek deklarēts. Tad varēšu pateikt, ko sīkāk.
Back to top
View user's profile Send e-mail
DeRatizators



Joined: 27 Apr 2006
Posts: 492

PostPosted: Sun Nov 04, 2007 8:39 pm    Post subject:

bubu wrote:
DLL failus pielinkot, cik zinu, var divos veidos:
1) uzstādot linkera opcijās, lai linko klāt .lib failu, kurā iekšā ir norādīts dll fails pie kura jālinkojas.
2) lietojot #pragma comment(lib, "fails.lib") direktīvu iekš jebkura .cpp/.h faila.

Ja nezini kas un kā, tad apskati, kādu tieši funkciju/klasi/mainīgo tas Master.dll fails importē no World.dll (cik sapratu tā nav jābūt) un tad parādi rindiņu no sources, kurā šis simbols (funkcija vai mainīgais) tiek deklarēts. Tad varēšu pateikt, ko sīkāk.


Ja es izmantotu kautkur papildus vienu vai otru, tad toč zinātu :)

Problēma tāda, ka man nesaka, ko tas cenšas izsaukt, citādi tas jau būtu +/- skaidrs. Man vienkārši saka, ka tāds un tāds DLL nav atrast un iet tālāk (kaut kur dzinī tiek apstrādāts).

Ok, vēlāk paskatīšos, kas sanāk tanī DLL. Pagaidām nav jau problēmas iekopēt 2 dll mapē Smile
Domāju, ka vainīgs ir kaut kas dīvains kodā.
_________________
Any PANCAKE has to be long and thin and short and fat. Not to mention being an excellent insulator and a superb conductor.
Back to top
View user's profile
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Sun Nov 04, 2007 8:48 pm    Post subject:

vienīgais, ko pašlaik varu ieteikt - izmanto meklēšanu, pameklē pēc #pragma comment(lib,"World.lib") (ja tev world.dll pielinko..)

Quote:
Ja nezini kas un kā, tad apskati, kādu tieši funkciju/klasi/mainīgo tas Master.dll fails importē no World.dll

Quote:
Problēma tāda, ka man nesaka, ko tas cenšas izsaukt, citādi tas jau būtu +/- skaidrs. Man vienkārši saka, ka tāds un tāds DLL nav atrast un iet tālāk (kaut kur dzinī tiek apstrādāts).


nu paņem šito
http://www.dependencywalker.com/

un atver vainīgo dll, tas visu parādīs - kas tiek importēts!
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle
Back to top
View user's profile Visit poster's website
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Sun Nov 04, 2007 9:24 pm    Post subject:

Nav nekas jāņem. Studijai tāds "Dependency Walker" tūlis nāk līdzi instalācijai.
Un XXX.lib fails ne vienmēr nozīmē to, ka tiks linkots klāt pie XXX.dll faila. XXX.lib var linkot pie YYY.dll faila un pie reizes arī pie ZZZ.dll faila. Nosaukumam nav nekādas nozīmes.


Last edited by bubu on Sun Nov 04, 2007 9:28 pm; edited 1 time in total
Back to top
View user's profile Send e-mail
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Sun Nov 04, 2007 9:27 pm    Post subject:

ja? Very Happy
nu anyway, es to ieinstalēju un tad piesaistu pie dll'iem, lai atver uzreiz...
pie exēm gan nemāku..
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle
Back to top
View user's profile Visit poster's website
Storm



Joined: 11 Apr 2006
Posts: 742

PostPosted: Sun Nov 04, 2007 10:14 pm    Post subject:

Svariigs likums - "optimize only when its necessary" Tavaa gadiijumaa - vai tev ir veerts skiest laiku lai mekleetu kaadu "kljuudu" kuru labojot Tu reaali redzamu labumu neguusi, it seviski ja nesanaak to atklaat ar standarta paarbaudeem? Tai pat laikaa var izdariit arii kko lietderiigu.
Back to top
View user's profile
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Sun Nov 04, 2007 10:24 pm    Post subject:

Es jau nu šo nesauktu par optimizēšanu. Šī ir vienkārši līka projekta konfigurācija :) Vēlāk droši vien pats sev problēmas radītu, ja vilktu līdzi nevajdzīgus dependencijus uz dll failiem.
Back to top
View user's profile Send e-mail
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Sun Nov 04, 2007 10:27 pm    Post subject:

Storm wrote:
Svariigs likums - "optimize only when its necessary" Tavaa gadiijumaa - vai tev ir veerts skiest laiku lai mekleetu kaadu "kljuudu" kuru labojot Tu reaali redzamu labumu neguusi, it seviski ja nesanaak to atklaat ar standarta paarbaudeem? Tai pat laikaa var izdariit arii kko lietderiigu.

1. kā tu zini, ka labumu neiegūs?
2. labāk ir visas kļūdas izlabot, vieglāk būs vēlāk kodēt, būs zināms, ka tādā un arī šādā vietā kodā kļūdu nav, tas ievērojami atvieglos turpmāko kļūdu meklēšanu!
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle
Back to top
View user's profile Visit poster's website
Storm



Joined: 11 Apr 2006
Posts: 742

PostPosted: Sun Nov 04, 2007 10:29 pm    Post subject:

"optimize only when its necessary" - tas jau buus tas "veelaak probleemas radiis varbuut" taatad JA radiis probleemas tad arii meklee savu konfiguraacijas kljuudu.
Back to top
View user's profile
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Sun Nov 04, 2007 10:35 pm    Post subject:

Storm - manuprāt tu jauc divas lietas: koda ātrdarbību (optimizēšanu) ar koda strādāšanu (korektumu, kļūdu neesamību). Takš neviens nerakstīs kodu kautkā sazin kā, un kļūdas meklēs pēc tam :) Normāli cilvēki raksta strādājošu kodu, t.i cenšās neielaist kļūdas. Un tur ar optimizāciju nav sakara. Tikai tad, kad kods ir strādājošs (un bez kļūdām), tad var ķerties klāt pie optimizēšanas. Vismaz tā es uzskatu.
Back to top
View user's profile Send e-mail
Display posts from previous:   
dev.gamez.lv Forum Index -> Programmēšana All times are GMT + 2 Hours
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group