I also tried the following code, using MoreFilesX.c, (I have omitted the
err != noErr and
other variables). my_Path is a Posix path: "/Users/byron...."
FSRef dirFSRef;
FSSPec fss;
long ID;
err = FSPathMakeRef((const UInt8*)my_Path, &dirFSRef, NULL);
err = FSGetNodeID(&dirFSRef,&ID,NULL);
err = FSMakeFSSpec(0,ID,(const unsigned char*)"\pMyLib",&fss);
err = GetFiskFragment(&fss, 0, kCFragGoesToEOF, (const unsigned char*)"",
kLoadCFrag,
&implCon, (Ptr*)&CFMFunc);
When my_Path is something like
/Users/byron/Desktop/MyApplication/MyPlugin,
GetDiskFragment works fine. But when called from inside a Java application
bundle, where
the path is more than 100 characters, GetFiskFragment fails with -2806. Is
there a
character limit in the path we pass to FSPathMakeRef? If so, can we
overcome this?
Best


|