ExternalLibraryFunction.st
changeset 11053 bcf4ebb25868
parent 11050 226b25e4bb97
child 11426 1fccae300393
equal deleted inserted replaced
11052:0c44bf26275c 11053:bcf4ebb25868
   109 !ExternalLibraryFunction class methodsFor:'class initialization'!
   109 !ExternalLibraryFunction class methodsFor:'class initialization'!
   110 
   110 
   111 addToDllPath:aDirectoryPathName
   111 addToDllPath:aDirectoryPathName
   112     "can be used during initialization, to add more places for dll-loading"
   112     "can be used during initialization, to add more places for dll-loading"
   113 
   113 
   114     DLLPATH := self dllPath asOrderedCollection copyWith:aDirectoryPathName
   114     |oldPath|
       
   115 
       
   116     oldPath := self dllPath.
       
   117     (oldPath includes:aDirectoryPathName) ifFalse:[
       
   118         self dllPath:(oldPath asOrderedCollection copyWith:aDirectoryPathName)
       
   119     ]
   115 !
   120 !
   116 
   121 
   117 dllPath
   122 dllPath
   118     ^ DLLPATH ? #( '.' )
   123     ^ DLLPATH ? #( '.' )
   119 !
   124 !
   141     "
   146     "
   142      self initialize
   147      self initialize
   143     "
   148     "
   144 
   149 
   145     "Modified: / 03-10-2006 / 21:27:47 / cg"
   150     "Modified: / 03-10-2006 / 21:27:47 / cg"
       
   151 !
       
   152 
       
   153 removeFromDllPath:aDirectoryPathName
       
   154     "remove added places from dll-loading"
       
   155 
       
   156     |oldPath|
       
   157 
       
   158     oldPath := self dllPath.
       
   159     self dllPath:(oldPath asOrderedCollection copyWithout:aDirectoryPathName)
       
   160 
       
   161     "
       
   162      self dllPath.
       
   163      self addToDllPath:'C:\aaa\bbb'.   
       
   164      self dllPath.
       
   165      self removeFromDllPath:'C:\aaa\bbb'.
       
   166      self dllPath.
       
   167     "
   146 ! !
   168 ! !
   147 
   169 
   148 !ExternalLibraryFunction class methodsFor:'constants'!
   170 !ExternalLibraryFunction class methodsFor:'constants'!
   149 
   171 
   150 callTypeAPI
   172 callTypeAPI
  1337 ! !
  1359 ! !
  1338 
  1360 
  1339 !ExternalLibraryFunction class methodsFor:'documentation'!
  1361 !ExternalLibraryFunction class methodsFor:'documentation'!
  1340 
  1362 
  1341 version
  1363 version
  1342     ^ '$Header: /cvs/stx/stx/libbasic/ExternalLibraryFunction.st,v 1.63 2008-06-09 18:40:14 cg Exp $'
  1364     ^ '$Header: /cvs/stx/stx/libbasic/ExternalLibraryFunction.st,v 1.64 2008-06-09 18:49:09 cg Exp $'
  1343 ! !
  1365 ! !
  1344 
  1366 
  1345 ExternalLibraryFunction initialize!
  1367 ExternalLibraryFunction initialize!