Denna delen av 99 uppdateras inte längre utan har arkiverats inför framtiden som ett museum.
Här kan du läsa mer om varför.
Mac-nyheter hittar du på Macradion.com och forumet hittar du via Applebubblan.

Utbruten tråd: Om avinstallerare i AppStore

Tråden skapades och har fått 39 svar. Det senaste inlägget skrevs .
Ursprungligen av macwitty:

...köpa program via MAP...

MAP?

Om man nu nödvändigtvis måste förkorta allting, så måste det väl bli MAS.

  • Medlem
  • Alvesta
  • 2011-01-08 17:35

Bästa lösningen på detta vore ju om Apple behåller dra till papperskorgen för att avinstallera, men implementerar en funktion som när du gör detta med en programfil frågar dig om du på samma gång till flytta alla programmets supportfiler till papperskorgen på samma gång.

Smidigt och elegant. Problemet löst.

Ursprungligen av akesson:

Bästa lösningen på detta vore ju om Apple behåller dra till papperskorgen för att avinstallera, men implementerar en funktion som när du gör detta med en programfil frågar dig om du på samma gång till flytta alla programmets supportfiler till papperskorgen på samma gång.

Smidigt och elegant. Problemet löst.

Skulle vilja trycka "gilla" på ditt inlägg..

//Stefan

Ursprungligen av akesson:

Bästa lösningen på detta vore ju om Apple behåller dra till papperskorgen för att avinstallera, men implementerar en funktion som när du gör detta med en programfil frågar dig om du på samma gång till flytta alla programmets supportfiler till papperskorgen på samma gång.

Smidigt och elegant. Problemet löst.

Svårigheten är att implementera det på ett bra sätt. Du behöver fortfarande ha domänkunskap eftersom det inte finns ett felfritt sätt att avgöra vilka filer som hör till programmet eller delas tillsammans med andra program. Man skulle kunna lösa det om det fanns möjlighet att specificera det i bundlen, men det skulle i så fall bara fungera för de program som implementerat det.

  • Medlem
  • Malmö
  • 2011-01-08 18:52
Ursprungligen av Marcus K:

Svårigheten är att implementera det på ett bra sätt. Du behöver fortfarande ha domänkunskap eftersom det inte finns ett felfritt sätt att avgöra vilka filer som hör till programmet eller delas tillsammans med andra program. Man skulle kunna lösa det om det fanns möjlighet att specificera det i bundlen, men det skulle i så fall bara fungera för de program som implementerat det.

Nu är jag inte säker på om det var detta du syftade på i ditt inlägg men skulle inte inte bara en avinstallerare för ett program ta bort det som faktiskt lades in vid installation? Om det redan fanns saker, vid installation, som sedan programmet faktiskt använder så lämnas det kvar då det inte lades dit vid installation.

Eller jag är helt ute och reser?

Ursprungligen av zinned:

Nu är jag inte säker på om det var detta du syftade på i ditt inlägg men skulle inte inte bara en avinstallerare för ett program ta bort det som faktiskt lades in vid installation? Om det redan fanns saker, vid installation, som sedan programmet faktiskt använder så lämnas det kvar då det inte lades dit vid installation.

Eller jag är helt ute och reser?

Nej inte helt, men du undervärderar svårigheten. Låt säga att du har ett program som installerar en viss resurs, t.ex ett bibliotek för att koda ljudfiler (ta vilket exempel som helst, detta är bara ett exempel på en typisk sån resurs som man kanske vill dela) Om andra program då vill använda samma resurs så kan man ju tänka sig att det programmet tittar på om resursen finns, och om inte så installeras den.

Men, tänk nu om det nya programmet använder en uppdaterad version, ska då den gamla skrivas över och vad händer i så fall med det tidigare programmet, funkar det med den nya resursen. Eller ska det nya programmet använda den gamla resursen, och funkar i så fall det?

Låt nu säga att man tar bort program nummer 1, som ju installerades innan program nummer 2. Hur ska program nummer 1 veta att program nummer 2 använder resursen?

Eller, om man nu vill ta bort program nummer 2, hur ska det då veta om program nummer 1 finns kvar eller inte? Visst, man kan låta varje program "registrera" vilka delade resurser som används, och så dubbelkolla mot det.

Men, det innebär inte att det är slut med felkällor: I dagens värld har vi flera processor och/eller kärnor. Låt oss säga att en användare drar igång två installerare/avinstallerare samtidigt. Det kan innebär att t.ex. en installerare tror att en resurs inte ska installeras, men samtidigt håller en avinstallerare på att ta bort samma resurs, och den i sin tur kan inte veta att en ny installerare håller på.

Och trust me, allt sånt där skit händer också i verkliga världen. Det är verkligen ett område där Murphys lag är järnhård.

VIsst, allt sånt här kan lösas om det finns en infrastruktur för det på systemnivå, och alla använder det. Men på Mac OS finns öht inget sånt, och även om det fanns skulle det dröja år innan alla program hade anpassats till att använda det, och, så länge man tillåter gamla program att installeras kan INGET system vara säkert.

WIndows är vad gäller infrastrukturen åratal, närmast decennier före Mac OS, men däremot finns det väldigt många program som inte alls utnyttjar sig av möjligheterna.

  • Medlem
  • Alvesta
  • 2011-01-08 19:26
Ursprungligen av Marcus K:

Svårigheten är att implementera det på ett bra sätt. Du behöver fortfarande ha domänkunskap eftersom det inte finns ett felfritt sätt att avgöra vilka filer som hör till programmet eller delas tillsammans med andra program. Man skulle kunna lösa det om det fanns möjlighet att specificera det i bundlen, men det skulle i så fall bara fungera för de program som implementerat det.

Det finns tydliga riktlinjer för var program bör och får lägga filer. Gör det till ett krav att alla programvaruutvecklare följer detta, inklusive Adobe & Microsoft som idag är bland de värsta filspridarförbrytarna. Vad gäller program som distribueras via AppStore är ju detta en baggis.

När användaren försöker radera ett program som inte följer riktlinjerna, låt dialogrutan informera om detta. Låt den även då nämna att programmet eventuellt lämnat filer kvar utspridda på hårddisken och att användaren bör besöka tillverkarens hemsida för att få information om hur han/hon avinstallerar programmet.

Senast redigerat 2011-01-08 20:32

Akesson, du verkar vara lite felinformerad. Både Adobe och Micrsoft följer i otroligt hög grad alla Apples rekommendationer om var filer ska placeras, men det verkar som om du tror något annat. I så fall skulle du väl kunna ge några exempel på såna "felplacerade" filer, från t.ex. CS5 eller Microsoft Office 20111?

Det du beskriver är för övrigt i hög grad exakt hur Windows funkar. Där kan du få meddelandet "Detta program använder DLL-filer som kanske används av ett annat program, vill du ändå avinstallera dem"?

Har man aldrig skrivit en installerare (och i ännu högre grad en avinstallerare) så vet man inte hur kolossalt svårt det är –.det är ofta lika komplicerat som att skriva själva programmet, åtminstone vad gäller alla små program. Jag har byggt ett antal installerar, både på Mac, Windows och Linux och jag önskar verkligen att det vore så enkelt som alla tror, men det är dessvärre inte så.

Enkla regler och enkla installerare är ofta bara möjligt för enkla program, och att då ställa upp det som krav för ALLA program innebär att man automatiskt kommer att stympa vad programmen kan göra.

Icke desto mindre, Mac App Store lämpar sig bäst för enkla program så där vore det säkert rimligt att fösa in samma i alla fålla.

  • Medlem
  • Alvesta
  • 2011-01-08 20:46
Ursprungligen av Richard Rönnbäck:

Akesson, du verkar vara lite felinformerad. Både Adobe och Micrsoft följer i otroligt hög grad alla Apples rekommendationer om var filer ska placeras, men det verkar som om du tror något annat. I så fall skulle du väl kunna ge några exempel på såna "felplacerade" filer, från t.ex. CS5 eller Microsoft Office 20111?

Det du beskriver är för övrigt i hög grad exakt hur Windows funkar. Där kan du få meddelandet "Detta program använder DLL-filer som kanske används av ett annat program, vill du ändå avinstallera dem"?

Har man aldrig skrivit en installerare (och i ännu högre grad en avinstallerare) så vet man inte hur kolossalt svårt det är –.det är ofta lika komplicerat som att skriva själva programmet, åtminstone vad gäller alla små program. Jag har byggt ett antal installerar, både på Mac, Windows och Linux och jag önskar verkligen att det vore så enkelt som alla tror, men det är dessvärre inte så.

Enkla regler och enkla installerare är ofta bara möjligt för enkla program, och att då ställa upp det som krav för ALLA program innebär att man automatiskt kommer att stympa vad programmen kan göra.

Icke desto mindre, Mac App Store lämpar sig bäst för enkla program så där vore det säkert rimligt att fösa in samma i alla fålla.

Office 2011 skapar en mapp i användarens Dokument-mapp som heter "Microsoft User Data" med filer som jag som användare inte bör ha någonting alls med att göra. Denna mapp bör ha placerats någonstans i Bibliotek-mappen, exempelvis Application Support.

Vad gäller Adobe CS5 kan jag inte uttala mig då jag stannat kvar med CS4, som sprider filer på väldigt många konstiga platser i min hemmamapp och installerar diverse skräp i bakgrunden utan att tillfråga mig (Adobe Updater t.ex). Toppen om Adobe skärpt sig i och med övergången till CS5.

Nej, du har fel: Apples riktlinjer handlar om filer som är användarrelaterade, dvs. även om de skapas på automatisk väg av programmet. Man kan tycka det är önskvärt eller inte, det finns argument för båda ståndpunkterna, men det är helt i enlighet med riktlinjerna.

Adobe Updater-filerna hör däremot knappast hemma där, och därför läggs de heller inte där i CS5.

Allvarligt talat, det är inte det som är problemet med installerare/avinstallerare. Det är en grej som kan se ful ut för en tekniskt lagd användare, men som varken gör från eller till för problematiken med installation/avinstallation.

Bevaka tråden