Re: envi_title_bar.ico missing and null pointer dereferenced error when using .sav file in ENVI [message #69315] |
Sat, 09 January 2010 08:52 |
rogass
Messages: 200 Registered: April 2008
|
Senior Member |
|
|
On 8 Jan., 19:46, Robin Wilson <r.t.wil...@rmplc.co.uk> wrote:
> I've now sorted this, so I thought I'd document the solution on here so
> that other people may find it.
>
> Basically the answer is for me to RTFM!
>
> I was just compiling my ENVI extension with the standard Build Project
> menu item in IDL, but I've found that it wasn't the right way to do it.
> According to the ENVI programmers guide you have to open up IDL by
> itself (ie. not having ENVI loaded) and then compile the project, use a
> specific RESOLVE_ALL command (to exclude the envi procedure) and then
> use the SAVE command to save all the routines to a .sav file.
>
> I've also found that I needed to follow the instructions to put a
> COMPILEOPT STRICTARR at the top of my functions so that it doesn't think
> I'm subscripting arrays when I call ENVI functions.
>
> This probably isn't very clear, but it's all documented on page 80 of
> the ENVI Programmers Guide.
>
> Cheers,
>
> Robin
>
> On 07/01/2010 15:38, robintw wrote:
>
>
>
>> Hi,
>
>> I've written some routines using ENVI/IDL, and packaged them up in
>> a .sav file to give to some of my colleagues. I've put the .sav file
>> in the save_add directory, and added the appropriate items to
>> envi.men. This works fine on my machine, but when I give it to one of
>> my colleagues to install on his machine he gets various strange
>> errors.
>
>> Firstly, when ENVI loads an error appears saying that
>> envi_title_bar.ico cannot be found in the directory that it's meant to
>> be found in, and asks you to specify a location for it. If you just
>> cancel the dialog box then the icon on the title bar appears fine. The
>> file envi_title_bar.ico definitely exists in the /menu directory of
>> the envi installation.
>
>> Another error that seems to occur is when running one of the
>> functions. The first line of the function is a call to ENVI_SELECT,
>> fid=fid to get the fid for the file the user has selected. The dialog
>> loads fine, but when the user selects a file an error occurs saying
>> "Attempt to dereference null pointer P_INFO". I've never seen this
>> error before, and it strikes me that a null pointer exception is a bit
>> of a strange error to get here. I've now just been informed by my
>> colleague that whenever my .sav file is present in the save_add
>> directory this null pointer error occurs whenever the ENVI_SELECT
>> dialog box is used, even when used by the built-in ENVI routines.
>
>> Neither of these happen on my computer, only on my colleagues. Both
>> computers are running exactly the same version of ENVI/IDL.
>
>> Does anyone have any idea what is going wrong here? I can't see how
>> the .sav file can work fine on my machine and not my colleagues - I
>> thought .sav files were meant to be portable!
>
>> I can provide copies of the code or the .sav file if needed.
>
>> Best regards,
>
>> Robin
Oh, this helps me too.
THANK you for your hints
Regards
CR
|
|
|