Jason,

try specifying the dll extension:

        CreateMutex(nil, False, 'AladdinsWD.dll');

from memory I had a similar problem a couple of years ago where NT4's
loadlibrary api call is different from other win's and doesn't default the
dll extension.

HTH

Steve

> -----Original Message-----
> From: Jason L. Coley [mailto:[EMAIL PROTECTED]]
> Sent: Tuesday, 22 May 2001 09:30
> To: Multiple recipients of list delphi
> Subject: RE: [DUG]: Delphi 3 & Delphi 5 differences with DLL's?
> 
> 
> Can anyone help me with this problem, or has anyone heard of such a
> problem with NT 4.0, another of my users has had the same problem on
> their NT 4 Server box with Outlook 2000 this time, so it 
> looks as though
> its not an Outlook thing, rather an NT 4 thing?
> 
> Jason
> 
> -----Original Message-----
> From: Jason L. Coley 
> Sent: Thursday, 17 May 2001 9:12 a.m.
> To: Multiple recipients of list delphi
> Subject: [DUG]: Delphi 3 & Delphi 5 differences with DLL's?
> 
> Hi,
> 
> I have been working on a couple of Outlook addins for a few years now,
> and recently decided to transfer one of the addins to Delphi 5 as the
> controls etc in D5 would make life a lot easier. But for some reason
> after rewriting certain parts of the code etc for the addin DLL, and
> finally compiling it in D5, it doesn't work with all users, in fact it
> seems to have trouble on NT 4 using Outlook 97. So this is probably a
> wild one out of the blue, but does anyone know of any things that I
> should be aware of when it comes to D5 and NT 4.0 and DLL's. The addin
> doesn't even load into Outlook on this particular machine at all, just
> bombs out and Outlook complains it can't find the dll at all?
> 
> I then recompiled back in D3 undoing a lot of the changes made for D5
> and its components, and it loaded into Outlook on NT 4 no
> problems...weird. I have checked the project settings and options and
> they are as similar as I could get. Strange things is the D5 
> addin works
> on all other flavours of windows and Outlook?
> 
> The project is below
> 
> library OlWrdDoc;
> 
> uses
>   Windows,
>   ComServ,
>   OlWrdDoc_TLB in 'OlWrdDoc_TLB.pas',
>   AladdWDTypes in 'AladdWDTypes.pas',
>   CodeStore in 'CodeStore.pas',
>   ExchangeExtension in 'ExchangeExtension.pas',
>   ExchExt in 'ExchExt.pas',
>   frmCustomAddress in 'frmCustomAddress.pas' {CustomAddress},
>   Outlook_TLB in 'Outlook_TLB.pas',
>   frmLetterSetup in 'frmLetterSetup.pas' {LetterSetup},
>   frmCustomMerge in 'frmCustomMerge.pas' {CustomMerge},
>   frmExport in 'frmExport.pas' {ExportFile},
>   Export in 'Export.pas',
>   WordInit in 'WordInit.pas' {frmWordInit},
>   MiscFunctions in 'MiscFunctions.pas',
>   Advanced in 'Advanced.pas' {frmAdvanced},
>   Office_TLB in 'Office_TLB.pas',
>   frmStyleOrganiser in 'frmStyleOrganiser.pas' {StyleOrganiser},
>   Strings in 'Strings.pas',
>   frmAddChoice in 'frmAddChoice.pas' {AddChoice},
>   frmUserDefined in 'frmUserDefined.pas' {UserDefined},
>   frmViewDocumentsOptions in 'frmViewDocumentsOptions.pas'
> {ViewDocumentsOptions},
>   frmTrial in 'frmTrial.pas' {Trial},
>   Forms,
>   frmViewDocuments in 'frmViewDocuments.pas' {ViewDocuments},
>   RegistryCode in 'RegistryCode.pas',
>   hh in 'hh.pas',
>   GetStatusBar in 'GetStatusBar.pas',
>   frmTest in 'frmTest.pas' {Test},
>   frmFilename in 'frmFilename.pas' {Filename},
>   frmPage in 'frmPage.pas' {Page},
>   frmPickJournal in 'frmPickJournal.pas' {PickJournal},
>   Diskspace in 'diskspace.pas';
> 
> {$R *.TLB}
> 
> {$R *.RES}
> 
> function RunInspectorCommand(cmdid: Integer): Integer;
> begin
>         MyExchExt.DoInspectorCommand(cmdid);
> Result := S_OK;
> end;
> 
> function ViewDocuments(cmdid: Integer): Integer;
> begin
>         ViewDocumentsMenu(1, nil);
> Result := S_OK;
> end;
> 
> function InitExtensionLibrary: Pointer; stdcall;
> begin
>         CreateMutex(nil, False, 'AladdinsWD');
>         MyExchExt := TExchangeExtension.Create;
>         try
>                 IUnknown(Result) := MyExchExt as IExchExt;
>         except
>                 Result := pointer(MyExchExt as IExchExt);
>         end;
> end;
> 
> exports
> DllGetClassObject resident,
> DLLCanUnloadNow resident,
> DllRegisterServer resident,
> DllUnregisterServer resident,
> InitExtensionLibrary index 1,
> RunInspectorCommand index 2,
> ViewDocuments index 3;
> 
> var
> SaveExit: pointer;
> 
> procedure ExitOLWRDDOC;
> begin
> ExitProc := SaveExit;
> end;
> 
> begin
> SaveExit := ExitProc;
> ExitProc := @ExitOLWRDDOC;
> end.
> --------------------------------------------------------------
> ----------
> ---
>     New Zealand Delphi Users group - Delphi List - 
> [EMAIL PROTECTED]
>                   Website: http://www.delphi.org.nz
> To UnSub, send email to: [EMAIL PROTECTED]
> with body of "unsubscribe delphi"
> --------------------------------------------------------------
> -------------
>     New Zealand Delphi Users group - Delphi List - 
> [EMAIL PROTECTED]
>                   Website: http://www.delphi.org.nz
> To UnSub, send email to: [EMAIL PROTECTED] 
> with body of "unsubscribe delphi"
> 
---------------------------------------------------------------------------
    New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED]
                  Website: http://www.delphi.org.nz
To UnSub, send email to: [EMAIL PROTECTED] 
with body of "unsubscribe delphi"

Reply via email to