DLL ongelma

Viestiketju PC:n pelit -osiossa. Ketjun avasi Tomppa26 05.09.2014.

  1. Tomppa26

    Tomppa26 Regular member

    Liittynyt:
    30.06.2014
    Viestejä:
    193
    Kiitokset:
    3
    Pisteet:
    28
    Elikkäs, kasasin oman koneeni, asensin windows 7 home 64-bit ja kaikki ohjelmat yms toimii, paitsi pelit.
    En ole vielä yhtäkään peliä saanut toimimaan ilman dll ongelmaa.
    Ongelma korjaantuu kun käynnistää pelin hakemiston kautta, eli siis minulla D:(pelin nimi- käynnistys).
    Jos laittaa pelin asennuksen yhteydessä pikakuvan työpöydälle peli herjaa jotain dll tiedostoa.
    Mistä tää tällänen johtuu?
    Esimerkkejä peleistä.
    The sims 3
    Farcry 3
    Mafia 2
    GTA san andreas
    NFS most wanted
    CS source/Half-Life 2

    Nämä nyt ekaks olen asentanu, kaikki pelit toimii, mutta työpöydälle on turha mitää noista laittaa.
     
  2.  
  3. Daword

    Daword Regular member

    Liittynyt:
    29.07.2009
    Viestejä:
    1,940
    Kiitokset:
    23
    Pisteet:
    48
    oletko luonut normaalin pikakuvakkeen?
    voit myös katsoa mitä dll tiedostoa se herjaa?
     
  4. xbkrypt0n

    xbkrypt0n Active member

    Liittynyt:
    16.06.2010
    Viestejä:
    3,154
    Kiitokset:
    120
    Pisteet:
    73
    Vanhemmat pelit saattaa tarvita vanhempia DirectX tiedostoja ja niitä ei oletuksena Vistasta uudemmissa käyttöjärjestelmissä tule mukana. Jos ei vielä ole asennettuna, niin asenna vanhempien DirectX versioiden tuki koneeseen:
    http://www.download.fi/jarjestelma/jarjestelmalaajennukset/directx_redistributable.cfm

    Huom! Tuon ajaminen ei siis vielä asenna vanhojen DX versioiden tukea käyttöjärjestelmään vaan se purkaa asennustiedostot valitsemaasi kansioon. Itse asennus pitää erikseen käydä käynnistämässä dxsetup.exe -tiedostosta kansiosta johon purit/purat tiedostot.
     
  5. R4ndom1

    R4ndom1 Regular member

    Liittynyt:
    06.06.2013
    Viestejä:
    588
    Kiitokset:
    52
    Pisteet:
    38
    Katso löytyykö windowsin system32 kansiosta kyseisiä kirjastoja, jos ei niin asenna directx uudelleen. Jos sieltä löytyy ne, kokeile kopioida ne pelin asennuskansioon. Voit myös ladata ne dll:t netistä, mutta en suosittele, koska niiden mukana voi tulla vähän sitä sun tätä.
     
  6. xbkrypt0n

    xbkrypt0n Active member

    Liittynyt:
    16.06.2010
    Viestejä:
    3,154
    Kiitokset:
    120
    Pisteet:
    73
    Tuota purkkafixiä ei kannata tehdä. Jos ne todellakin ovat siellä esim. system32 -kansiossa eikä peli sieltä niitä löydä, niin ympäristömuuttuja PATH on jostain syystä nollautunut ja sinne pitää lisästä tuo polku.

    Järjestelmä > Järjestelmän lisäasetukset > Ympäristömuuttujat... > Järjestelmämuuttujista löytyy Path ja siellä pitäisi lukea arvona mm. (voi ja pitääkin lukea siis paljon muutakin siellä):
    %SystemRoot%\system32;%SystemRoot%

    Nuo jos jostain syystä path-ympäristömuuttujasta puuttuvat, niin muidenkin ohjelmien kanssa tulee olemaan ainakin jossain vaiheessa paljon ongelmia. Puolipiste ; erottaa eri polut toisistaan ja prosenttimerkkien % sisällä oleva sana on aina jokin ympäristömuuttuja.
     
  7. R4ndom1

    R4ndom1 Regular member

    Liittynyt:
    06.06.2013
    Viestejä:
    588
    Kiitokset:
    52
    Pisteet:
    38
    Windowsin oletusasetuksilla käyttöjärjestelmä etsii automaattisesti sitä dll:ää system32 kansiosta ja sitä kutsuvan exe:n kansiosta. Sillä ei ole mitään väliä onko se dll system32 kansiossa vai pelin asennuskansiossa. Windows maailmassa ohjelmien asennuskansiohin tungetaan kaikki kirjastot, joita ei normaalisti löydy system32 kansiosta, ja näin saattaa koneen kovolla olla monia kappaleita samasta kirjastosta. DX kirjastot löytyy yleensä oletuksena system32 kansiosta, joten niitä ei tungeta pelin asennuskansioon.
     
  8. xbkrypt0n

    xbkrypt0n Active member

    Liittynyt:
    16.06.2010
    Viestejä:
    3,154
    Kiitokset:
    120
    Pisteet:
    73
    Miksi sitten yleensä edes ehdotit tuota kopiointia?

    Asennuskansioon ohjelman tai pelin mukana tulee yleensä (ei aina) kaikki ohjelman/pelin tarvitsemat tiedostot tai ohjelma/peli olettaa, että ne löytyvät jo käyttöjärjestelmästä valmiina.

    Ohjelmat/pelit eivät myöskään automaattisesti etsi noita tiedostoja mistään system32-kansiosta tai muualtakaan vaan olettavat, että ne ovat yleisesti käytettävissä ilman tarkempaa tiedostosijainnin määritystä (siksi on path ympäristömuuttuja).


    EDIT: Yksi mikä tulee mieleen, kerta pelit toimivat suoraan kansiosta mutta ei pikakuvakkeesta on se, että pikakuvakkeen työkansio on määritelty joksikin muuksi kuin pelin asennuskansioksi. Silloin peli ei tietysti löydä mitään dll tiedostoja eikä mitään muitakaan pelin tarvitsemia tiedostoja... tai sekin voi olla, ettei tässä ole edes kyse mistään pikakuvakkeista vaan pelin .exe tiedosto on kopioitu suoraan työpöydälle. Pikakuvakkeen mistä tahansa tiedostosta voi luoda vetämällä tiedoston työpöydälle pitäen pohjassa Control (Ctrl) ja Vaihto (Shift) näppäimiä. Pelkästään Vaihtoa pohjassa pitämällä tiedosto siirretään ja pelkästään Controllia pohjassa pitämällä tiedosto kopioidaan.
     
    Viimeksi muokattu: 15.09.2014
  9. R4ndom1

    R4ndom1 Regular member

    Liittynyt:
    06.06.2013
    Viestejä:
    588
    Kiitokset:
    52
    Pisteet:
    38
    Eivät ohjelmat itse etsi niitä, dll on osa ohjelmaa (joka on yleensä kolmannen osapuolen kehittämä), ja se ladataan muistiin kun käyttöjärjestelmä avaa exe:n (ellei se ole jo muistissa jonkun muun prosessin käytettävissä). Windowsin oletusasetuksilla käyttöjärjestelmä etsii sovelluksen tarvitemia kirjastoja/dll:iä system32 kansiosta ja sovelluksen asennuskansiosta. Peleissä tulevat "dll virheet" tulee yleensä siitä ettei directx:ää ole asennettu.
     
  10. Tomppa26

    Tomppa26 Regular member

    Liittynyt:
    30.06.2014
    Viestejä:
    193
    Kiitokset:
    3
    Pisteet:
    28
    Siis ihan niinkuin kymmenenvuotta aikasemminki, siitä mistä peli käynnyistyy ja toiminu aina, painanu hiiren oikealla, luo pikakuvake työpöydälle. Tän uuden koneen kanssa ja win 7 64-bit kans ei toimi.
    Tosin pitää ihan ajatuksen kanssa virkeänä lukea noita juttuja jos meinaa pelit saada työpöydällä kulkemaan, niin ehkä nopempi ku menee oma tietokone-d-pelit ja tällee..
    Tai sitten peli itse luo pikakuvan työpöydälle niinkuin usein on. Ei toimi.
    Ja eikö noi dll tiedostovirheet voi korjata ihan manuaalisesti vaikka ilman internetyhteyttä, eli ei mitään dll fixer ohjelmia tms? Ja niinkuin yksi ammattilainen sanoi, voi tulla mukana vaikka ja mitä.
     
    Viimeksi muokattu: 16.09.2014
  11. pateboe

    pateboe Regular member

    Liittynyt:
    14.06.2008
    Viestejä:
    413
    Kiitokset:
    20
    Pisteet:
    28
    Nyt on pakko kysyä. Onko pelit aitoja? :rolleyes:
     
  12. 1pertti

    1pertti Senior member

    Liittynyt:
    10.09.2008
    Viestejä:
    9,179
    Kiitokset:
    1,225
    Pisteet:
    243
    Hyvin huteralla mutu-pohjalla eli itse asiassa täydellisen tietämättömänä kyselen asioita tietäviltä, voisiko em. ongelmat johtua siitä, että pelit on ilmeisesti asennettu D-asemalle ja saattavat sitten tavoitella "vääräbittistä" dll-tiedostoa. Vai eikö? Tällaisiin ajatuksiin johdatti se, että Windows oletuksena asentaa 64-bittiset sovellukset Program files -kansioon ja 32-bittiset Program files (x86) -kansioon. Tällöin sovellus ei voi osua "vääräbittiseen" dll-tiedostoon.
     
  13. xbkrypt0n

    xbkrypt0n Active member

    Liittynyt:
    16.06.2010
    Viestejä:
    3,154
    Kiitokset:
    120
    Pisteet:
    73
    Jos kansio ei ole kirjoitussuojattu, niin ei pitäisi edes antaa tuota vaihtoehtoa vaan ihan normaalin "luo pikakuvake" ja se pikakuvake tulee samaan kansioon missä pelikin on.

    Ei voi. Pelit voi asentaa ihan mihin haluaa ja ne kyllä sieltä toimivat. Todella harva peli vaatii oletuskansioon asentamisen toimiakseen. Tässähän pelit siis ilmeisesti toimivat muuten normaalisti, paitsi etteivät käynnisty itse luodusta pikakuvakkeesta.
     

Jaa tämä sivu