~ubuntu-branches/debian/lenny/fpc/lenny

« back to all changes in this revision

Viewing changes to fpcsrc/packages/base/winunits/jwasporder.pas

  • Committer: Bazaar Package Importer
  • Author(s): Mazen Neifer, Torsten Werner, Mazen Neifer
  • Date: 2008-05-17 17:12:11 UTC
  • mfrom: (3.1.9 intrepid)
  • Revision ID: james.westby@ubuntu.com-20080517171211-9qi33xhd9evfa0kg
Tags: 2.2.0-dfsg1-9
[ Torsten Werner ]
* Add Mazen Neifer to Uploaders field.

[ Mazen Neifer ]
* Moved FPC sources into a version dependent directory from /usr/share/fpcsrc
  to /usr/share/fpcsrc/${FPCVERSION}. This allow installing more than on FPC
  release.
* Fixed far call issue in compiler preventing building huge binearies.
  (closes: #477743)
* Updated building dependencies, recomennded and suggested packages.
* Moved fppkg to fp-utils as it is just a helper tool and is not required by
  compiler.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
{******************************************************************************}
 
2
{                                                                              }
 
3
{ Winsock2 Service Provider ordering API interface Unit for Object Pascal      }
 
4
{                                                                              }
 
5
{ Portions created by Microsoft are Copyright (C) 1995-2001 Microsoft          }
 
6
{ Corporation. All Rights Reserved.                                            }
 
7
{                                                                              }
 
8
{ The original file is: sporder.h, released June 2000. The original Pascal     }
 
9
{ code is: SpOrder.pas, released June 2001. The initial developer of the       }
 
10
{ Pascal code is Marcel van Brakel (brakelm att chello dott nl).               }
 
11
{                                                                              }
 
12
{ Portions created by Marcel van Brakel are Copyright (C) 1999-2001            }
 
13
{ Marcel van Brakel. All Rights Reserved.                                      }
 
14
{                                                                              }
 
15
{ Obtained through: Joint Endeavour of Delphi Innovators (Project JEDI)        }
 
16
{                                                                              }
 
17
{ You may retrieve the latest version of this file at the Project JEDI         }
 
18
{ APILIB home page, located at http://jedi-apilib.sourceforge.net              }
 
19
{                                                                              }
 
20
{ The contents of this file are used with permission, subject to the Mozilla   }
 
21
{ Public License Version 1.1 (the "License"); you may not use this file except }
 
22
{ in compliance with the License. You may obtain a copy of the License at      }
 
23
{ http://www.mozilla.org/MPL/MPL-1.1.html                                      }
 
24
{                                                                              }
 
25
{ Software distributed under the License is distributed on an "AS IS" basis,   }
 
26
{ WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for }
 
27
{ the specific language governing rights and limitations under the License.    }
 
28
{                                                                              }
 
29
{ Alternatively, the contents of this file may be used under the terms of the  }
 
30
{ GNU Lesser General Public License (the  "LGPL License"), in which case the   }
 
31
{ provisions of the LGPL License are applicable instead of those above.        }
 
32
{ If you wish to allow use of your version of this file only under the terms   }
 
33
{ of the LGPL License and not to allow others to use your version of this file }
 
34
{ under the MPL, indicate your decision by deleting  the provisions above and  }
 
35
{ replace  them with the notice and other provisions required by the LGPL      }
 
36
{ License.  If you do not delete the provisions above, a recipient may use     }
 
37
{ your version of this file under either the MPL or the LGPL License.          }
 
38
{                                                                              }
 
39
{ For more information about the LGPL: http://www.gnu.org/copyleft/lesser.html }
 
40
{                                                                              }
 
41
{******************************************************************************}
 
42
 
 
43
// $Id: JwaSpOrder.pas,v 1.7 2005/09/06 16:36:50 marquardt Exp $
 
44
 
 
45
unit JwaSpOrder;
 
46
 
 
47
{$WEAKPACKAGEUNIT}
 
48
 
 
49
{$HPPEMIT ''}
 
50
{$HPPEMIT '#include "sporder.h"'}
 
51
{$HPPEMIT ''}
 
52
 
 
53
{$I jediapilib.inc}
 
54
 
 
55
interface
 
56
 
 
57
uses
 
58
  JwaWindows;
 
59
  
 
60
function WSCWriteProviderOrder(lpwdCatalogEntryId: LPDWORD; dwNumberOfEntries: DWORD): Integer; stdcall;
 
61
{$EXTERNALSYM WSCWriteProviderOrder}
 
62
 
 
63
type
 
64
  LPWSCWRITEPROVIDERORDER = function(lpwdCatalogEntryId: LPDWORD; dwNumberOfEntries: DWORD): Integer; stdcall;
 
65
  {$EXTERNALSYM LPWSCWRITEPROVIDERORDER}
 
66
 
 
67
function WSCWriteNameSpaceOrder(const lpProviderId: TGUID; dwNumberOfEntries: DWORD): Integer; stdcall;
 
68
{$EXTERNALSYM WSCWriteNameSpaceOrder}
 
69
 
 
70
type
 
71
  LPWSCWRITENAMESPACEORDER = function(const lpProviderId: TGUID; dwNumberOfEntries: DWORD): Integer; stdcall;
 
72
  {$EXTERNALSYM LPWSCWRITENAMESPACEORDER}
 
73
 
 
74
implementation
 
75
 
 
76
uses
 
77
  JwaWinDLLNames;
 
78
 
 
79
{$IFDEF DYNAMIC_LINK}
 
80
 
 
81
var
 
82
  _WSCWriteProviderOrder: Pointer;
 
83
 
 
84
function WSCWriteProviderOrder;
 
85
begin
 
86
  GetProcedureAddress(_WSCWriteProviderOrder, sporderlib, 'WSCWriteProviderOrder');
 
87
  asm
 
88
        MOV     ESP, EBP
 
89
        POP     EBP
 
90
        JMP     [_WSCWriteProviderOrder]
 
91
  end;
 
92
end;
 
93
 
 
94
var
 
95
  _WSCWriteNameSpaceOrder: Pointer;
 
96
 
 
97
function WSCWriteNameSpaceOrder;
 
98
begin
 
99
  GetProcedureAddress(_WSCWriteNameSpaceOrder, sporderlib, 'WSCWriteNameSpaceOrder');
 
100
  asm
 
101
        MOV     ESP, EBP
 
102
        POP     EBP
 
103
        JMP     [_WSCWriteNameSpaceOrder]
 
104
  end;
 
105
end;
 
106
 
 
107
{$ELSE}
 
108
 
 
109
function WSCWriteProviderOrder; external sporderlib name 'WSCWriteProviderOrder';
 
110
function WSCWriteNameSpaceOrder; external sporderlib name 'WSCWriteNameSpaceOrder';
 
111
 
 
112
{$ENDIF DYNAMIC_LINK}
 
113
 
 
114
end.