Hey Rob,
I appear to be having a similar issue to the above, rather then opening another Thread I thought I would add to this one for collaboration.
I have done what you said above with the code below and can see the image is saving successfully to my ResourcesDirectory folder along side my settings but when I access Facebook I get
ERROR
The operation couldn’t be completed (com.facebook error 123.)

CODE:
[lua]
local function onFaceBookShareRelease( … )
–Read the exiciting FaceBookIcon from the resource directory (image is in same drector as my main.lua and other files)
–Read image and convert image to a binary form
local pathRead = system.pathForFile( “FaceBookIcon.jpg”,system.ResourceDirectory )
local file = io.open( pathRead, “rb” )
local imageData = file:read( “*a” )
io.close( file )
–Setup write directory to my documesnts directoy that my settings have been saved to
–Write the binary file and close and set FileStream back to nil
local pathWrite = system.pathForFile( “FaceBookIcon.jpg”, system.DocumentsDirectory )
local file = io.open( pathWrite, “wb” )
file:write( imageData )
io.close( file )
file = nil
–Setup my Facebook ID
local fbAppID = “1405306663086221” --fake
–iF login = success then create the attachment and send it to facebook
local function onLoginSuccess()
– Upload ‘FaceBookIcon.jpg’ to current user’s account
local attachment = {
message = "I just started playing Beetle Juice, come join me in squashing some bugs! ",
source = { baseDir=system.DocumentsDirectory, filename=“FaceBookIcon.jpg”, type=“image” },
link = “http:roedangames.net”
}
facebook.request( “me/photos”, “POST”, attachment )
end
– facebook listener
local function fbListener( event )
if event.isError then
native.showAlert( “ERROR”, event.response, { “OK” } )
else
if event.type == “session” and event.phase == “login” then
– login was a success; call function
onLoginSuccess()
elseif event.type == “request” then
– this block is executed upon successful facebook.request() call
native.showAlert( “Success”, “The photo has been uploaded.”, { “OK” } )
end
end
end
– photo uploading requires the “publish_stream” permission
facebook.login( fbAppID, fbListener, { “publish_stream” } )
end[/lua]