Win32OperatingSystem.st
changeset 10913 b9a2c48a0043
parent 10792 46d6f7358405
child 10968 f9da8a9c476c
equal deleted inserted replaced
10912:37bf6915a0e9 10913:b9a2c48a0043
   723     "Modified: 22.4.1996 / 13:10:43 / cg"
   723     "Modified: 22.4.1996 / 13:10:43 / cg"
   724     "Created: 15.6.1996 / 15:22:37 / cg"
   724     "Created: 15.6.1996 / 15:22:37 / cg"
   725     "Modified: 7.1.1997 / 19:36:11 / stefan"
   725     "Modified: 7.1.1997 / 19:36:11 / stefan"
   726 ! !
   726 ! !
   727 
   727 
       
   728 
   728 !Win32OperatingSystem class methodsFor:'OS signal constants'!
   729 !Win32OperatingSystem class methodsFor:'OS signal constants'!
   729 
   730 
   730 sigABRT
   731 sigABRT
   731     "return the signal number for SIGABRT - 0 if not supported by OS
   732     "return the signal number for SIGABRT - 0 if not supported by OS
   732      (the numeric value is not the same across unix-systems)"
   733      (the numeric value is not the same across unix-systems)"
  1320 !Win32OperatingSystem class methodsFor:'accessing'!
  1321 !Win32OperatingSystem class methodsFor:'accessing'!
  1321 
  1322 
  1322 performanceData
  1323 performanceData
  1323     ^ PerformanceData
  1324     ^ PerformanceData
  1324 ! !
  1325 ! !
       
  1326 
  1325 
  1327 
  1326 !Win32OperatingSystem class methodsFor:'error messages'!
  1328 !Win32OperatingSystem class methodsFor:'error messages'!
  1327 
  1329 
  1328 currentErrorNumber
  1330 currentErrorNumber
  1329     "returns the OS's last error nr (i.e. the value of errno).
  1331     "returns the OS's last error nr (i.e. the value of errno).
  4225 
  4227 
  4226    "
  4228    "
  4227     (OperatingSystem accessModeOf:'Make.proto') printStringRadix:8
  4229     (OperatingSystem accessModeOf:'Make.proto') printStringRadix:8
  4228     (OperatingSystem changeAccessModeOf:'Make.proto' to:8r644)
  4230     (OperatingSystem changeAccessModeOf:'Make.proto' to:8r644)
  4229    "
  4231    "
       
  4232 ! !
       
  4233 
       
  4234 !Win32OperatingSystem class methodsFor:'file dialogs'!
       
  4235 
       
  4236 commDlgExtendedError
       
  4237 
       
  4238     <apicall: ulong "CommDlgExtendedError" () module: "comdlg32.dll" >
       
  4239 "/    <api: CommDlgExtendedError ulong>
       
  4240     ^self primitiveFailed
       
  4241 !
       
  4242 
       
  4243 getOpenFilename: openFilenameStructureExternalAddress
       
  4244 
       
  4245     "Opens a windows native file dialog without blocking stx for an OpenFilenameStructure stored in an externalAddress.
       
  4246     openFilenameStructureExternalAddress is an integer representing it's address"
       
  4247 
       
  4248     | rslt |
       
  4249 %{  /* STACK: 32000*/
       
  4250 
       
  4251     int __address;
       
  4252     BOOL __rslt;
       
  4253 
       
  4254     __address = __intVal(openFilenameStructureExternalAddress);
       
  4255     __rslt = __STX_API_CALL1( "GetOpenFileName", (void *)GetOpenFileName, (void *)(__address));
       
  4256 
       
  4257     if (__rslt == TRUE) {
       
  4258         rslt = true;
       
  4259     } else {
       
  4260         rslt = false;
       
  4261     }
       
  4262 %}.
       
  4263     ^ rslt
       
  4264 !
       
  4265 
       
  4266 getSaveFilename: openFilenameStructureExternalAddress
       
  4267 
       
  4268     "Opens a windows native file dialog without blocking stx for an OpenFilenameStructure stored in an externalAddress.
       
  4269     openFilenameStructureExternalAddress is an integer representing it's address"
       
  4270 
       
  4271     | rslt |
       
  4272 
       
  4273 %{  /* STACK: 32000*/
       
  4274 
       
  4275     int __address;
       
  4276     BOOL __rslt;
       
  4277 
       
  4278     __address = __intVal(openFilenameStructureExternalAddress);
       
  4279     __rslt = __STX_API_CALL1( "GetSaveFileName", (void *)GetSaveFileName, (void *)(__address));
       
  4280 
       
  4281     if (__rslt == TRUE) {
       
  4282         rslt = true;
       
  4283     } else {
       
  4284         rslt = false;
       
  4285     }
       
  4286 %}.
       
  4287     ^ rslt
  4230 ! !
  4288 ! !
  4231 
  4289 
  4232 !Win32OperatingSystem class methodsFor:'file queries'!
  4290 !Win32OperatingSystem class methodsFor:'file queries'!
  4233 
  4291 
  4234 caseSensitiveFilenames
  4292 caseSensitiveFilenames
  6125 
  6183 
  6126     <apicall: bool "DuplicateHandle" ( handle, handle, handle, pointer, dword, bool, dword) module: "kernel32.dll" >
  6184     <apicall: bool "DuplicateHandle" ( handle, handle, handle, pointer, dword, bool, dword) module: "kernel32.dll" >
  6127     self primitiveFailed.
  6185     self primitiveFailed.
  6128 
  6186 
  6129     "Created: / 18-09-2007 / 16:31:23 / cg"
  6187     "Created: / 18-09-2007 / 16:31:23 / cg"
  6130 !
       
  6131 
       
  6132 writePrivateProfileString: appName keyName: keyName profileString: profString fileName: aString
       
  6133 
       
  6134    ^self primWritePrivateProfileString: appName keyName: keyName profileString: profString fileName: aString
       
  6135 
       
  6136 "
       
  6137     |profileStringToWrite recoveredProfileString|
       
  6138     profileStringToWrite :=  'c:\vsw311'.
       
  6139     self writePrivateProfileString: 'PAV-Editor' keyName: 'ExportPath' profileString: profileStringToWrite fileName: 'C:\vsw311\dapas.ini'.
       
  6140     recoveredProfileString := self getProfileString:'PAV-Editor' key:'ExportPath' default:'@@@nil@@@' fileName:'C:\vsw311\dapas.ini' private:true.
       
  6141     self assert: (profileStringToWrite = recoveredProfileString).
       
  6142 "
       
  6143 
       
  6144     "Modified: / 18-12-2006 / 13:20:20 / User"
       
  6145 ! !
  6188 ! !
  6146 
  6189 
  6147 !Win32OperatingSystem class methodsFor:'os queries'!
  6190 !Win32OperatingSystem class methodsFor:'os queries'!
  6148 
  6191 
  6149 executableFileExtensions
  6192 executableFileExtensions
  8232 osProcessStatusClass
  8275 osProcessStatusClass
  8233     ^ OSProcessStatus
  8276     ^ OSProcessStatus
  8234 
  8277 
  8235     "Created: / 12.6.1998 / 16:30:43 / cg"
  8278     "Created: / 12.6.1998 / 16:30:43 / cg"
  8236 ! !
  8279 ! !
       
  8280 
  8237 
  8281 
  8238 !Win32OperatingSystem class methodsFor:'registry support'!
  8282 !Win32OperatingSystem class methodsFor:'registry support'!
  8239 
  8283 
  8240 registryEntry
  8284 registryEntry
  8241     "provide access to the registryEntry class"
  8285     "provide access to the registryEntry class"
 14931 ! !
 14975 ! !
 14932 
 14976 
 14933 !Win32OperatingSystem class methodsFor:'documentation'!
 14977 !Win32OperatingSystem class methodsFor:'documentation'!
 14934 
 14978 
 14935 version
 14979 version
 14936     ^ '$Header: /cvs/stx/stx/libbasic/Win32OperatingSystem.st,v 1.323 2007-11-19 13:01:08 stefan Exp $'
 14980     ^ '$Header: /cvs/stx/stx/libbasic/Win32OperatingSystem.st,v 1.324 2008-03-12 16:23:35 fm Exp $'
 14937 ! !
 14981 ! !
 14938 
 14982 
 14939 Win32OperatingSystem initialize!
 14983 Win32OperatingSystem initialize!
 14940 Win32OperatingSystem::PerformanceData initialize!
 14984 Win32OperatingSystem::PerformanceData initialize!
 14941 Win32OperatingSystem::RegistryEntry initialize!
 14985 Win32OperatingSystem::RegistryEntry initialize!