[so] Intrebare despre librarii windows

mihaela m mihaela_im86 at yahoo.com
Thu May 29 16:11:21 EEST 2008


Daca as putea fi sigura ca LoadLib cauta intai in system32 si abia apoi in PATH (sau in subdirectoarele directorului curent), ar fi suficient sa trimit functiei doar numele librariei, fara sa fie nevoie sa ii dau calea completa.
Ideea e ca pentru win 2003 si win 2008 trebuie sa folosesc libraria din system32, chiar daca ea exista sau nu intr-un subdirector al directorului curent.

Cred ca totusi o sa folosesc PathFileExists ca sa testez daca exista dll-ul in system 32 si daca da sa folosesc LoadLibrary trimitand calea completa catre system32. Daca nu exista dll-ul in system32, o sa trimit doar numele dll-ului ca parametru la LoadLibrary si o sa il incarce din primul loc in care il gaseste (aici ar trebui sa apara dll-ul creat de mine). 
O sa modific putin implementarea ca sa scot pasul in care doar verificam existenta fisierului.

Multumesc pentru ajutor.

Maximilian Machedon <maximilian.machedon at gmail.com> wrote: Si de ce e rau daca o incarci? Folosind acel flag nu se executa cod din ea.

 2008/5/29 mihaela m <mihaela_im86 at yahoo.com>:
 Inca o intrebare: prin 
1. The directory from which the application loaded.
ar trebui sa inteleg si subdirectoarele directorului? 
 
Ca sa explic mai bine care era problema, eu am nevoie de o librarie care exista pe windows 2003 si windows 2008 in system32, dar pe 2000 o creez eu intr-un director predefinit in aplicatie. 
De asta vroiam doar sa verific existenta ea, fara sa o incarc.
 
Multumes pentru raspunsurile prompte :).  

Lucian Adrian Grijincu <lucian.grijincu at gmail.com> wrote:
  stiu, LoadLib cauta in mai multe locuri si are niste prioritati bine
determinate.

am luat "(presupun ca e setata in PATH)" ca o premisă.



2008/5/29 Maximilian Machedon :  
>
> Tin sa nu fiu de acord. Nu folosi path-ul pentru ca poti obtine altceva
> decat ar incarca LoadLibrary.
>
> Vezi http://msdn.microsoft.com/en-us/library/ms682586.aspx
 >

> 2008/5/29 Lucian Adrian Grijincu :
>>
>> 2008/5/29 mihaela m :  
>> > Functia si incarca libraria.
>> tu vrei doar sa vezi daca fisierul ăla există?
>> Te poți uita in PATH: parsezi manual șirul și apendezi numele dll-ului
>> la fiecare cale de director din PATH.
 >> verifici daca fisierul exista (exista o func. care iti zice daca un
>> fisier exista sau nu, i-am uitat numele).
>>
>> > In plus trebuie sa fie suportata pe orice Windows Server de la 2000 la
 >> > 2008.
>> >
>> Client Requires Windows Vista, Windows XP, or Windows 2000 Professional.
>> Server Requires Windows Server 2008, Windows Server 2003, or Windows
>> 2000 Server.
 >>
>>

 >> > Maximilian Machedon wrote:
>> >
>> > LoadLibraryEx()
>> > http://msdn.microsoft.com/en-us/library/ms684179.aspx
 >> >
>> > Foloseste flag-ul LOAD_LIBRARY_AS_DATAFILE.

>> > 2008/5/29 mihaela m :   
 
>> >>
>> >> Buna.
>> >>
>> >> Stie cineva cum as putea verifica existenta unui fisier .dll fara sa
>> >> incerc sa il deschid sau sa incarc libraria? As prefera o varianta in
 >> >> care
>> >> nu trebuie sa ii dau calea completa catre librarie (presupun ca e
>> >> setata in
>> >> PATH).
>> >>
>> >>
>> >> Multumesc,
 >> >> Mihaela Mihalache
>> >>
>> >> _______________________________________________
>> >> so mailing list
>> >> so at cursuri.cs.pub.ro
 >> >> http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/so
>> >>
>> >
>> > _______________________________________________
 >> > so mailing list
>> > so at cursuri.cs.pub.ro
>> > http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/so
 >> >
>> >
>> > _______________________________________________
>> > so mailing list
>> > so at cursuri.cs.pub.ro
 >> > http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/so
>> >
>> >
>>
>>
>>
 >> --
>> Lucian
>> _______________________________________________
>> so mailing list
>> so at cursuri.cs.pub.ro
>> http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/so
 >
>
> _______________________________________________
> so mailing list
> so at cursuri.cs.pub.ro
> http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/so
 >
>



-- 
Lucian
_______________________________________________
so mailing list
so at cursuri.cs.pub.ro
http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/so
 


 

_______________________________________________
so mailing list
so at cursuri.cs.pub.ro
http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/so
 


 _______________________________________________
so mailing list
so at cursuri.cs.pub.ro
http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/so


       
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://cursuri.cs.pub.ro/pipermail/so/attachments/20080529/4ad3294b/attachment.htm 


More information about the so mailing list