本文整理汇总了C++中WIDE函数的典型用法代码示例。如果您正苦于以下问题:C++ WIDE函数的具体用法?C++ WIDE怎么用?C++ WIDE使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了WIDE函数的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: SlowPoll
/* This is the slowpoll function which gathers up network/hard drive
performance data for the random pool */
BOOL SlowPoll (void)
{
static int isWorkstation = -1;
static int cbPerfData = 0x10000;
HANDLE hDevice;
LPBYTE lpBuffer;
DWORD dwSize, status;
LPWSTR lpszLanW, lpszLanS;
int nDrive;
/* Find out whether this is an NT server or workstation if necessary */
if (isWorkstation == -1)
{
HKEY hKey;
if (RegOpenKeyEx (HKEY_LOCAL_MACHINE,
"SYSTEM\\CurrentControlSet\\Control\\ProductOptions",
0, KEY_READ, &hKey) == ERROR_SUCCESS)
{
unsigned char szValue[32];
dwSize = sizeof (szValue);
isWorkstation = TRUE;
status = RegQueryValueEx (hKey, "ProductType", 0, NULL,
szValue, &dwSize);
if (status == ERROR_SUCCESS && _stricmp ((char *) szValue, "WinNT"))
/* Note: There are (at least) three cases for
ProductType: WinNT = NT Workstation,
ServerNT = NT Server, LanmanNT = NT Server
acting as a Domain Controller */
isWorkstation = FALSE;
RegCloseKey (hKey);
}
}
/* Initialize the NetAPI32 function pointers if necessary */
if (hNetAPI32 == NULL)
{
/* Obtain a handle to the module containing the Lan Manager
functions */
hNetAPI32 = LoadLibrary ("NETAPI32.DLL");
if (hNetAPI32 != NULL)
{
/* Now get pointers to the functions */
pNetStatisticsGet = (NETSTATISTICSGET) GetProcAddress (hNetAPI32,
"NetStatisticsGet");
pNetApiBufferSize = (NETAPIBUFFERSIZE) GetProcAddress (hNetAPI32,
"NetApiBufferSize");
pNetApiBufferFree = (NETAPIBUFFERFREE) GetProcAddress (hNetAPI32,
"NetApiBufferFree");
/* Make sure we got valid pointers for every NetAPI32
function */
if (pNetStatisticsGet == NULL ||
pNetApiBufferSize == NULL ||
pNetApiBufferFree == NULL)
{
/* Free the library reference and reset the
static handle */
FreeLibrary (hNetAPI32);
hNetAPI32 = NULL;
}
}
}
/* Get network statistics. Note: Both NT Workstation and NT Server
by default will be running both the workstation and server
services. The heuristic below is probably useful though on the
assumption that the majority of the network traffic will be via
the appropriate service */
lpszLanW = (LPWSTR) WIDE ("LanmanWorkstation");
lpszLanS = (LPWSTR) WIDE ("LanmanServer");
if (hNetAPI32 &&
pNetStatisticsGet (NULL,
isWorkstation ? lpszLanW : lpszLanS,
0, 0, &lpBuffer) == 0)
{
pNetApiBufferSize (lpBuffer, &dwSize);
RandaddBuf ((unsigned char *) lpBuffer, dwSize);
pNetApiBufferFree (lpBuffer);
}
/* Get disk I/O statistics for all the hard drives */
for (nDrive = 0;; nDrive++)
{
DISK_PERFORMANCE diskPerformance;
char szDevice[24];
/* Check whether we can access this device */
sprintf (szDevice, "\\\\.\\PhysicalDrive%d", nDrive);
hDevice = CreateFile (szDevice, 0, FILE_SHARE_READ | FILE_SHARE_WRITE,
NULL, OPEN_EXISTING, 0, NULL);
if (hDevice == INVALID_HANDLE_VALUE)
break;
/* Note: This only works if you have turned on the disk
//.........这里部分代码省略.........
示例2: main
void main(int argc, char **argv)
{
if(argc < 1)
return;
// get path
int dat, l = 0, h = 0, w = 0, n = 0;
bool prev = false;
FILE *fs, *fd;
char root[_MAX_PATH], file[_MAX_PATH];
char tmp1[_MAX_PATH], tmp2[_MAX_PATH], dest[_MAX_PATH];
GetModuleFileName(NULL, root, _MAX_PATH);
int p = strlen(root);
while(root[p] != '\\')
p--;
root[p] = '\0';
strcpy(tmp1, argv[1]);
p = strlen(tmp1);
while(p != 0 && tmp1[p] != '\\')
p--;
if(p)
strcpy(file, &tmp1[p + 1]);
else
strcpy(file, argv[1]);
sprintf(tmp1, "%s\\tmp1.txt", root);
sprintf(tmp2, "%s\\tmp2.txt", root);
sprintf(dest, "%s\\dest.cas", root);
if(strcmp(file, "tmp1.txt") == 0) {
printf("skip wav->pulse\n");
goto label1;
}
if(strcmp(file, "tmp2.txt") == 0) {
printf("skip wav->pulse\n");
printf("skip pulse->bit\n");
goto label2;
}
// convert #1 (wav -> pulse)
fs = fopen(argv[1], "rb");
fd = fopen(tmp1, "w");
while((dat = fgetc(fs)) != EOF) {
bool current = dat & 0x80 ? false : true;
if(prev && !current) {
if(NARROW(l) && (NARROW(h) || WIDE(h)))
fputc('N', fd);
else if(WIDE(l) && (WIDE(h) || NARROW(h)))
fputc('w', fd);
else
fprintf(fd, "[%d,%d]", l, h);
l = h = 0;
}
if(current)
h++;
else
l++;
prev = current;
}
fclose(fd);
fclose(fs);
label1:
// convert #2 (pulse -> bit)
fs = fopen(tmp1, "rb");
fd = fopen(tmp2, "w");
prev = true;
while((dat = fgetc(fs)) != EOF) {
if(dat != 'w' && dat != 'N') {
fputc(dat, fd);
continue;
}
bool current = (dat == 'w') ? true : false;
if(prev != current) {
if(w)
fprintf(fd, "[W%d]", w);
if(n)
fprintf(fd, "[n%d]", n);
w = n = 0;
}
prev = current;
if(current)
w++;
else
n++;
if(w == 2) {
fputc('w', fd);
w = n = 0;
}
if(n == 4) {
fputc('N', fd);
w = n = 0;
}
}
//.........这里部分代码省略.........
示例3: TCOpenVolume
//.........这里部分代码省略.........
case TC_VOLUME_TYPE_HIDDEN:
if (lDiskLength.QuadPart <= TC_VOLUME_HEADER_GROUP_SIZE)
continue;
headerOffset.QuadPart = mount->UseBackupHeader ? lDiskLength.QuadPart - TC_HIDDEN_VOLUME_HEADER_OFFSET : TC_HIDDEN_VOLUME_HEADER_OFFSET;
break;
}
Dump ("Reading volume header at %I64d\n", headerOffset.QuadPart);
ntStatus = ZwReadFile (Extension->hDeviceFile,
NULL,
NULL,
NULL,
&IoStatusBlock,
readBuffer,
bRawDevice ? max (TC_VOLUME_HEADER_EFFECTIVE_SIZE, Extension->HostBytesPerSector) : TC_VOLUME_HEADER_EFFECTIVE_SIZE,
&headerOffset,
NULL);
}
else
{
// Header of a partition that is within the scope of system encryption
WCHAR parentDrivePath [47+1] = {0};
HANDLE hParentDeviceFile = NULL;
UNICODE_STRING FullParentPath;
OBJECT_ATTRIBUTES oaParentFileAttributes;
LARGE_INTEGER parentKeyDataOffset;
RtlStringCbPrintfW (parentDrivePath,
sizeof (parentDrivePath),
WIDE ("\\Device\\Harddisk%d\\Partition0"),
mount->nPartitionInInactiveSysEncScopeDriveNo);
Dump ("Mounting partition within scope of system encryption (reading key data from: %ls)\n", parentDrivePath);
RtlInitUnicodeString (&FullParentPath, parentDrivePath);
InitializeObjectAttributes (&oaParentFileAttributes, &FullParentPath, OBJ_CASE_INSENSITIVE | OBJ_KERNEL_HANDLE, NULL, NULL);
ntStatus = ZwCreateFile (&hParentDeviceFile,
GENERIC_READ | SYNCHRONIZE,
&oaParentFileAttributes,
&IoStatusBlock,
NULL,
FILE_ATTRIBUTE_NORMAL |
FILE_ATTRIBUTE_SYSTEM,
FILE_SHARE_READ | FILE_SHARE_WRITE,
FILE_OPEN,
FILE_RANDOM_ACCESS |
FILE_WRITE_THROUGH |
FILE_NO_INTERMEDIATE_BUFFERING |
FILE_SYNCHRONOUS_IO_NONALERT,
NULL,
0);
if (!NT_SUCCESS (ntStatus))
{
if (hParentDeviceFile != NULL)
ZwClose (hParentDeviceFile);
Dump ("Cannot open %ls\n", parentDrivePath);
goto error;
}