/* * ==================================================================== * Copyright (c) 2004-2012 TMate Software Ltd. All rights reserved. * * This software is licensed as described in the file COPYING, which * you should have received as part of this distribution. The terms * are also available at http://svnkit.com/license.html. * If newer versions of this license are posted there, you may use a * newer version instead, at your option. * ==================================================================== */ package org.tmatesoft.svn.core.internal.util.jna; import java.util.Arrays; import java.util.List; import com.sun.jna.NativeLong; import com.sun.jna.Pointer; import com.sun.jna.Structure; import com.sun.jna.WString; import com.sun.jna.win32.StdCallLibrary; /** * @version 1.3 * @author TMate Software Ltd. */ interface ISVNKernel32Library extends StdCallLibrary { public static class OSVERSIONINFO extends Structure { public NativeLong dwOSVersionInfoSize; public NativeLong dwMajorVersion; public NativeLong dwMinorVersion; public NativeLong dwBuildNumber; public NativeLong dwPlatformId; public char[] szCSDVersion; public OSVERSIONINFO() { dwMajorVersion = new NativeLong(0); dwMinorVersion = new NativeLong(0); dwBuildNumber = new NativeLong(0); dwPlatformId = new NativeLong(0); szCSDVersion = new char[128]; for (int i = 0; i < szCSDVersion.length; i++) { szCSDVersion[i] = 0; } dwOSVersionInfoSize = new NativeLong(this.size()); } protected List<String> getFieldOrder() { return Arrays.asList("dwMajorVersion", "dwMinorVersion", "dwBuildNumber", "dwPlatformId", "szCSDVersion", "dwOSVersionInfoSize"); } } public long FILE_ATTRIBUTE_READONLY = 0x01; public long FILE_ATTRIBUTE_HIDDEN = 0x02; public long FILE_ATTRIBUTE_NORMAL = 0x80; public int VER_PLATFORM_WIN32_WINDOWS = 1; public int VER_PLATFORM_WIN32_NT = 2; public Pointer LocalFree(Pointer ptr); public int SetFileAttributesW(WString path, NativeLong attrs); public int MoveFileW(WString src, WString dst); public int MoveFileExW(WString src, WString dst, NativeLong flags); public int GetVersionExW(Pointer pInfo); public int GetLastError(); }