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.
Ulf H

Ulf H

Medlem
  • Registrerad 2003-04-02
  • Senast aktiv 2013-02-07
  • Antal inlägg 211

Foruminlägg

De senaste inläggen Ulf H har skrivit i forumet.

  • Medlem
  • 2004-05-01 16:46

Problemet är bara att dialog inte visar hela sanningen...

Om jag använder en construct enligt

repeat with variable name in list

Exempel:

repeat with x in {1,2,3}
..
end repeat

Så är det inte siffran 1,2,3 jag tittar på det är innehållet i listan
dvs

item 1 (of {1,2,3})
item 2 (of {1,2,3})
item 3 (of {1,2,3})

repeat with <variableneme> in <list> är beskriven som

"This construct is like a repeat, but the variable <variablename> is assigned
successively a reference to each item of the list"

När du gör display så ser du referensen dvs item 1 visas som 1 men det är
inte det integer värde som du jämför med i din lista. Det är därför man i
detta fall (vilket jag håller med om är inkonsekvent) måste kolla på innehållet
i listan i stället för referensen till innehållet i listan.

dvs if x is 3 then

Ska utläsas som

if "item 3 of {1,2,3}" is 3 then , vilket är false,

inte som man skulle tro (eller vill att det ska vara)

if "cast(item 3 of {1,2,3}) to integer" is 3

och därför fungerar istället

if n as integer is 3

eller alternativt

if contents of x

Att vi pratar om referenser och inte faktiska värden dvs integer
Går faktiskt att visa. Via Apples Discussion Forums hittade jag en bra
metod att kunna testa detta i AppleScript.

Genom att använda en liten "debugger" metod kan man testa om
man jobbar med referenser eller faktiska värden. Denna method
kallar vi isRef()

(* This method test if we are using a reference to a value or not *)

on isRef(TestIfRef)
try
TestIfRef as reference
return true
on error
return false
end try
end isRef

repeat with x in {1, 2, 3}
display dialog isRef(x)
end repeat

Detta problem är tydligen också
dokumenterat som förväntat beteende i "Applescript The
Definitive Guide" från O'Reilly. Jag har inte boken själv
men tipset ovan med isRef() som jag fick via någon person
från Apple's Discussion Forum refererade till denna bok.
Någon som kanske har boken kan verifiera om detta är
sant eller inte.

Men det hindrar ju inte på något sätt att Du kan rapportera
detta som ett dåligt beteende i AppleScript. Jag funderar
själv på att göra det. Det är ju ett bra sätt att se till att
Applescript blir bättre och mer ur användares ögon mer
lätt använt. Eller att dokumentationen fås en genomgång.

Jag vet att Sal Soghoian (Applescript Product Manager) har
sagt att han är medveten om att dokumentationen inte
är i fas med själva funktionaliteten. Men att man internt
många gånger måste fokusera på att i första hand få
funktionaliteten att fungera och därmed blir ibland dokumentationen
lidande.

Referenser är faktiskt ett litet helvete i AppleScript för det är rätt
inkonsekvent när Applescript själv kan göra en implicit derefernce
(normalt vad man kallar cast) mellan en datatyp till en annan
och att man inte dokumenterar detta. Det behöver således inte
vara en "bug" i ordets rätta bemärkelse utan kass dokumentering.

Jag håller fullständigt med om
att det är tokigt att '>' , '<' fungerar annorlunda än '='. Konsekvent sett
så skulle ingen av ovanstående fungera utan att man
själv gör en explicit dereference till innehållet om man utgår från
det resonemang som jag lärt mig är det rätta.

Mvh
/Ulf

  • Medlem
  • 2004-04-30 17:30

För att förtydliga det där med referensen till listan så kan Ni kolla in följande exempel.

Vad tror Ni resultatet blir av följande kod:

set Lista1 to {1,2,3,4,5}
set Lista2 to {}
repeat with x in Lista1
    set end of Lista2 to x
end repeat

Svar:

item 5 of {1, 2, 3, 4, 5}

vilket inte är det samma som integer 5

Mvh
/Ulf

  • Medlem
  • 2004-04-30 17:22

Hade samma problem själv för ett tag sedan och var bergis på att det här är en bug. Men efter att skärskådat dokumentationen så kunde jag konstatera att jag hade fel. Detta är förväntat beteende.

Det här fungerar inte

repeat with x in {1,2,3,4,5}
    if x = 2 then 
      display dialog "2"
    end if
end repeat

Faktum är att x aldrig är 2, x är referensen till till det andra elementet i listan {1,2,3,4,5}
Rätt syntax är att referera till värdet av x istället för referera till elementet i listan.

repeat with x in {1,2,3,4,5}
  if contents of x = 2 then
      display dialog "2"
  end if
end repeat

Mvh
/Ulf

  • Medlem
  • 2004-04-28 22:24

Are you using FileVault ? If then then the diskspace will be re-used when you logoff your account. You will get an option about compressing the Filevault disk image. That could be one reason

Secondly.. 192MB is really low. Could be that you machine swaps out memory to disk. Use the terminal and do

du -k /var/vm

and you get the amount of diskspace that is used for swapping out processes to disk in KB.

Alternativly you can do

ls -l /var/vm

and manual sum up the bytes used for virtual swap files.

Even though there are som utlities that can clear out those swap files from the disk , it's not recommended since
in worst case something is in those files that an open program has a reference to. (This programs like normally
warns about this and recommends a reboot)

KInd Rgds
/Ulf

  • Medlem
  • 2004-04-26 19:10

Har även jag en iMac 800Mhz Globe och har aldrig haft några som hellst problem med ljudnivåer etc. Tyst, snygg och med all den prestanda jag kan behöva. Den enda nackdelen är väl att jag inte kan bära med mig den som en bärbar... För när jag sitter med min skit Dell på jobbet så saknar jag verkligen min tysta, design snygga, vita iMac där hemma. Har iofs lyckats komma över en gammal "Sawtoth" 400 Mhz G4, som komplement till Dell burken men den är långt ifrån tyst... Fläktarna låter rätt ordentligt på dom stationära maskinerna. Så den står mestadels i viloläge, tyvärr...

Men om man som jag inte har behov, vilket jag aldrig har haft att bygga ut med nya grafikkort en gång i kvartalet eller stoppa in interna diskar (det finns ju externa Firewire) så är iMac'en ett perfekt och kompakt koncept. Jag tycker många klagar på iMac'ens brist på utbyggnad. Men hur många är det som verkligen bygger ut sina maskiner istället för att köpa nytt när det väl är dags ?

Mvh
/Ulf

  • Medlem
  • 2004-04-05 23:58

Tack Taz,

Såg inte skogen för alla träd! Lösningen var ju så simpel....

Jag använder helt enkelt "Export Field Contents" i Filemaker och sparar filen med ett hårdkodad namn. I nästa steg i mitt Filemaker manus kör jag ett AppleScript som helt enkelt döper om filen till orginalnamnet hämtat från Filemaker databasen.

Snygg lösning i Filemaker att man kan inkludera egna AppleScript genom manussteget Perform AppleScript. Som du sa är det bra att testa scriptet först i AppleScript's Manusredigerare och när man är nöjd så klipp & klistrar man in koden i Filemaker. Det är inte hypersnabbt att göra så här men det är i af automatiskt 200 bilder av varierande storlek exporteras på 10-12 sekunder på min iMac G4 800Mhz.

Go to Layout [ "Form with Metadata" (Photo Catalog) ] 
Go to Record/Request/Page [ First ] 
Sort Records [ Specified Sort Order: Photo Catalog::Name; ascending Photo Catalog::Date Entered; descending ] [ Restore ] 
Loop 
Go to Field [ Photo Catalog::Image ] Export Field Contents [ Photo Catalog::Image; "filemac:/Macintosh HD/Users/ulfh/Pictures/Temp/Untitled.jpg" ] 
Perform AppleScript [ Native AppleScript: 
tell application "FileMaker Pro" 
    set TheName to get data second cell of current record 
    tell application "Finder" 
      activate  
      move "Macintosh HD:Användare:ulfh:Bilder:Temp:Untitled.jpg" to
               "Macintosh HD:Användare:ulfh:Bilder:Photo Catalog:" 
      set name of result to TheName 
    end tell 
end tell  ]
Go to Record/Request/Page [ Next; Exit after last ] 
End Loop 

Mvh
/Ulf

  • Medlem
  • 2004-04-04 15:20

Problem:

Jag har ett Filemaker Pro 7 Register (körs på MacOSX Panther) som inehåller ett antal 1000 bilder. Bilderna är sparade i ett container fält men lagras inte i filsystemet utan i själva registret.
Av säkerhets/backup själ enligt upphovsmakaren av registret.

Jag behöver nu efter vissa sökkriterier extrahera ett antal bilder till (flera 100) till filsystemet för vidare bearbetning. Eftersom det här är i princip ett en gångs jobb så är inte någon Plugin (Heter det så ? någon option, vet att sådana finns)

Så mina alternativ är antingen Manusscript eller AppleScript.

Men jag har lite problem med båda lösningarna. Jag har labbat lite med "Photo Catalog" som följer med
Filemaker och funnit följande:

I FileMaker hittade jag efter lite sökande "Export Field Content". Den fungerar i princip men verkar bara stödja hårdkoddade namn på det jag vill exportera. Alltså jag kan inte dynamiskt ange vilket filnamn bilden ska ha på disken utan antingen måste det hårdkodas i scriptet eller så får jag en popup för varje bild och måste själv mata in namnet på bilden. Jobbigt med flera 100 bilder (även om det är ett engångsjobb vill jag göra en snygg lösning) och vill göra funktionen återanvändbar

Manusscriptet ser ut enligt:

Go to Layout [ "Form with Metadata" (Photo Catalog) ]
 Go to Record/Request/Page [ First ] 
Sort Records [ Specified Sort Order: Photo Catalog::Name; ascending Photo Catalog::Date Entered; descending ] [ Restore ]
 Loop 
Go to Field [ Photo Catalog::Image ]
 Export Field Contents [ Photo Catalog::Image ] 
Go to Record/Request/Page [ Next ]
 End Loop 

Fråga: Går det att dynamiskt hämta namnet på bilden från mitt register och använda som parameter till "Export Field Content" i Filemaker 7

Jag tror att ovanstående script steg kräver ett statiskt namn men kan förhoppningsvis ha fel ?!

Min andra tanke var att använda AppleScript för att exportera bilderna men jag lyckas inte få ihop det heller. Det vore fakiskt en snygg lösning att göra allt från AppleScript och det borde gå. Men jag fattar inte hur jag ska kunna extrahera innehållet i ett Container fält och sedan spara innehållet som en bild
(alltså kombinera det lagrade namnet på bilden i registret med inehållet i container fältet som är själva
bilddatat) och FileMaker dokumentationen har inte hjälpt mig här.

Här är det jag lyckats knåpa ihop med AppleScript.

Loopen verkar gå igenom alla bilder men a) Jag kan inte skriva ut innehållet ur bilden i filen i rätt format
b) write verkar endast stödja text. Finns någon fiffig funktion för att spara en bild från ett container fält
i AppleScript ??

tell application "Finder"
	set thefolder to "Bilddata"
	if exists folder thefolder then
		set thefolder to item thefolder as alias
	else
		make new folder with properties {name:"Bilddata"}
		set thefolder to result
	end if
end tell
tell application "FileMaker Pro"
	sort second layout by {field "Name"}
	repeat with i from 1 to count of records
		set TheName to get data first cell
		set MyName to TheName as string
		set TheImage to get data second cell
		set theFile to open for access file (thefolder & MyName as string) with write permission
		--		
		-- write TheName to theFile
		close access theFile
	end repeat
end tell

Kanske är den rätta lösningen en kombination av Manusscript i Filemaker med AppleScript ? Börjar i af att förtvivla och känna mig lite dum i huve..

Så slänger ut problemet här för att se om någon expert på FM har någon smart lösning.

Mvh
/Ulf

  • Medlem
  • 2004-03-07 19:53

Även min röst hamnar på Findern. Tja ord är överflödiga för dom som redan röstat för den har täckt in allt jag själv inte gillar med den.

  • Medlem
  • 2004-02-29 14:25

Per,

Vet att det här kommer att låta heltokigt. Men jag hade samma problem för något år sedan i Jaguar med en Canon MV400i som iMovie vägrade hitta under OSX. I OS9 på en gammal iBook gick det dock bra enda tills jag uppgraderade även den till 10'an. Förtvivlade lite enda tills en kompis till mig var hemma och hade med sig en DV-kamera + kabel som var nyinköpt. Den fungerad perfekt! Blev lite sotis och f-bannad. Jag blev lång i ansiktet när jag provade att koppla in min egna kamera med hans kabel eftersom det då fungerade alldeles felfritt under OSX. Tidigare hade det endast gått under OS9 ju så att misstänka kabeln hade jag aldrig ens funderat över. Drog till Claes Ohlsson (tror jag) köpte en ny Firewire kabel till DV och efter det har det aldrig varit något problem. I mitt fall var det alltså kabeln som kom med kameran som inte var helt ok helt enkelt. Långsökt men kan ju vara värt att prova iaf.

Mvh
/Ulf

  • Medlem
  • 2004-02-29 14:12

För min del räcker det då med att att starta enbart Safari och sedan dra lite nya bokmärken till bokmärkes foldern för att fenomenet ska uppstå eller att starta Mail direkt efter inloggning. Detta på en 800Mhz G4 med 768 RAM och med 0 sidor utpagade. Säger inte att alla hängningar i Panther inte beror på minneshantering. Kan väl tillägga att min Dasslocks G3'a med 300MB+ i RAM och åtskilliga samtidiga program kör 10.3.1 fortfarande och , visst där går det segt men den hänger inte med badbollar stup i kvarten med 10.3.2 blev den okörbar men efter nedgradering tuffar den på om än sakta men iaf säkert.

Visst jazzper. Du har rätt MacOSX är minneshungrigt det är det inte tu tal om. Men jag har inte haft ett enda problem innan 10.3.2, någonsin med min iMac. Med 10.3.2 ständiga badbollar. Med 10.3.1 fungerar det så att det då skulle vara minnesrelaterat ser jag i stjärnorna efter.

Fenomen som är vanliga

- Safari hänger vid nya bokmärken, Findern dör + Dockan och Terminalen svarar inte på kommandon (typ ls -l)
- Mail hänger vid uppstart eller efter vila med samma fenomen som ovan.
- OSX hänger efter vila med samma fenomen som ovan.
- Inloggningsfönstret hänger och det går inte att logga in överhuvudtaget.

Naturligtvis innebär det att när Findern väl hänger så att Äpplemenyn inte svarar så går det inte att starta något
nytt program från dockan. Dessa startas aldrig. Det går inte längre att komma åt Tvångsavsluta och därmed är
oftast sista utvägen att göra en hard reset al'a Windows manèr.

Vid X antal tillfällen har jag lyckats rädda dessa hängningar genom att dra ur nätverkskabeln och sätta tillbaka den igen. Men det hjälper långt ifrån alltid.

Pär, visst är det många som kör 10.3.2 utan några problem också.. Jag betvivlar inte det eftersom jag själv aldrig tidigare haft ett enda problem med badbollar i vare sig Jaguar (10.2) eller Panther innan 10.3.2. Jag skulle t.o.m kunna dryfta mig till att säga att majorititeten inte ens ser de här problemen. Men jag kan se av inläggen att döma på olika forum att just 10.3.2 verkar drabba många som tidigare aldrig haft problem. Min personliga tro är att det är kombination av mjukvaran i 10.3.2 med hårdvaran i vissa Macar som skapar problemet.

Mvh
/Ulf

  • Medlem
  • 2004-02-28 22:53

Kolla in Apple's Forum. Det här är inte något minnesproblem . Finns MASSOR av folk som har problem med 10.3.2 (inklusive undertecknad) Mail hänger vid uppstart, Safari dör när man drar länkar in bookmarks foldern, Kollar Ni lite bland alla tråder här så ser du och dom andra tvivlarna att fler personer även på 99Mac har drabbats av konstigheter efter att ha lagt på 10.3.2. Med 10.3.1 försvinner problemen. Det är något strul med nätverksdrivisarna i 10.3.2 åtminstonde när det gäller mail, Safari vet jag inte om det har med senaste uppdateringen att göra men jag börjar bli smått irreterad på ständiga ombootningar.

Mvh
/Ulf

  • Medlem
  • 2004-02-27 23:55

XedoZ,

Hittade du någon Mac fil för Europa någonstans ? Eller behöver man en PC -j***el för att kunna installera en nyare Firmware ?

/Ulf

  • Medlem
  • 2004-02-25 23:05

Glömde att lägga till. Men även jag kör en DI-804. Jag har inte provat eller kollat om det finns högre firmware version att installera i den (ofta så innebär ju tyvärr firmware i en router att man måste knappa in alla inställningar igen och jag är för lat för det) På Apples Forum har en del blivit av med problemen i 10.3.2 efter att ha uppgraderat firmware i sina routers.

Mvh
/Ulf

  • Medlem
  • 2004-02-25 23:00

XedoZ,

Jag körde i ca 2.5 vecka helt utan problem med 10.3.1 efter att ha nedgraderat (dvs ominstallerat från scratch) Sedan kom någon säkerhetsuppdatering och jag klantade mig och lyckades kryssa i även 10.3.2 uppdateringen igen. Vips så var problemen tillbaka igen.

Mvh
/Ulf

  • Medlem
  • 2004-02-25 21:05

Nix, Det här är ett problem i 10.3.2 Har inget med AppleTalk att göra. Har precis samma fenomen och kan garantera att det här problemet disskuterats friskt på Apple's forum. För en del har det hjälpt att uppdatera programvaran i sina routers men inte för alla och alla kan inte heller göra det.

Jag har haft det här problemet ända sedan 10.3.2 släpptes. Jag har t.o.m migrerat ner och kört på 10.3.1 för att verifiera att det inte är ett hårdvarurelaterat problem. Det brukar för mig börja med att mail hänger eller Safari hänger när jag drar något nytt till Bookmarks. Därefter badboll, död Finder och Docka , inga program startar upp längre och terminalen svarar inte längre på kommandon. Kör även jag med en D-link router. Om jag är tillräckligt snabb med att dra ur nätverkskabeln (innan allt tokhänger) så brukar det lösa sig. Problemet är mail för om det väl hänger brukar nästa uppstart av mail totalhänga och enda sättet att lösa detta problem på är att radera preference filer till mail. Vid ett tillfälle tokhände inloggningen för mig efter en hård reset och då blev jag tvungen att starta i single user mode och radera samtliga cache filer samt någon pref fil jag inte längre kommer ihåg vilken för att få igång inloggningsrutan igen. Hittade det tipset på Apple's Forum.

Var dum vid ett tillfälle när någon säkerhetspatch dök upp och lyckades lägga på 10.3.2 igen efter att ha kört lycklig på 10.3.1 utan några som hellst problem... Orkar bara inte migrera ner en gång till. Hoppas på att lösningen kommer i 10.3.3 för det är en hel del folk som buggrapporterat dessa hängningar till Apple och precis som du är jag rätt trött på att ständigt behöva boota om från start.

Summa summarum. Du är inte ensam!

Mvh
/Ulf