Skip to content

Commit 3c74a36

Browse files
committed
Differ between UNICODE and _UNICODE.
1 parent a064d0e commit 3c74a36

File tree

2 files changed

+19
-15
lines changed

2 files changed

+19
-15
lines changed

MemoryModule.c

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -537,11 +537,15 @@ static PIMAGE_RESOURCE_DIRECTORY_ENTRY _MemorySearchResourceEntry(
537537
DWORD end;
538538
DWORD middle;
539539

540-
if (!IS_INTRESOURCE(key) && key[0] == _T('#')) {
540+
if (!IS_INTRESOURCE(key) && key[0] == TEXT('#')) {
541541
// special case: resource id given as string
542-
_TCHAR *endpos = NULL;
543-
long int tmpkey = (WORD) _tcstol((_TCHAR *) &key[1], &endpos, 10);
544-
if (tmpkey <= 0xffff && _tcslen(endpos) == 0) {
542+
TCHAR *endpos = NULL;
543+
#if defined(UNICODE)
544+
long int tmpkey = (WORD) wcstol((TCHAR *) &key[1], &endpos, 10);
545+
#else
546+
long int tmpkey = (WORD) strtol((TCHAR *) &key[1], &endpos, 10);
547+
#endif
548+
if (tmpkey <= 0xffff && lstrlen(endpos) == 0) {
545549
key = MAKEINTRESOURCE(tmpkey);
546550
}
547551
}
@@ -570,28 +574,28 @@ static PIMAGE_RESOURCE_DIRECTORY_ENTRY _MemorySearchResourceEntry(
570574
} else {
571575
start = 0;
572576
end = resources->NumberOfIdEntries;
573-
#ifndef _UNICODE
574-
_TCHAR *searchKey = NULL;
577+
#if !defined(UNICODE)
578+
char *searchKey = NULL;
575579
int searchKeyLength = 0;
576580
#endif
577581
while (end > start) {
578582
// resource names are always stored using 16bit characters
579583
middle = (start + end) >> 1;
580584
PIMAGE_RESOURCE_DIR_STRING_U resourceString = (PIMAGE_RESOURCE_DIR_STRING_U) (((char *) root) + (entries[middle].Name & 0x7FFFFFFF));
581585
int cmp;
582-
#ifndef _UNICODE
586+
#if !defined(UNICODE)
583587
if (searchKey == NULL || searchKeyLength < resourceString->Length) {
584588
void *tmp = realloc(searchKey, resourceString->Length);
585589
if (tmp == NULL) {
586590
break;
587591
}
588592

589-
searchKey = (_TCHAR *) tmp;
593+
searchKey = (char *) tmp;
590594
}
591595
wcstombs(searchKey, resourceString->NameString, resourceString->Length);
592596
cmp = strncmp(key, searchKey, resourceString->Length);
593597
#else
594-
cmp = wcsncmp((_TCHAR *) key, resourceString->NameString, resourceString->Length);
598+
cmp = wcsncmp(key, resourceString->NameString, resourceString->Length);
595599
#endif
596600
if (cmp < 0) {
597601
end = middle;
@@ -602,7 +606,7 @@ static PIMAGE_RESOURCE_DIRECTORY_ENTRY _MemorySearchResourceEntry(
602606
break;
603607
}
604608
}
605-
#ifndef _UNICODE
609+
#if !defined(UNICODE)
606610
free(searchKey);
607611
#endif
608612
}
@@ -716,8 +720,8 @@ MemoryLoadStringEx(HMEMORYMODULE module, UINT id, LPTSTR buffer, int maxsize, WO
716720
} else {
717721
buffer[size] = 0;
718722
}
719-
#ifdef _UNICODE
720-
_tcsncpy(buffer, data->NameString, size);
723+
#if defined(UNICODE)
724+
wcsncpy(buffer, data->NameString, size);
721725
#else
722726
wcstombs(buffer, data->NameString, size);
723727
#endif

example/DllLoader/DllLoader.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,15 @@
99

1010
typedef int (*addNumberProc)(int, int);
1111

12-
#define DLL_FILE _T("..\\SampleDLL\\SampleDLL.dll")
12+
#define DLL_FILE TEXT("..\\SampleDLL\\SampleDLL.dll")
1313

1414
void LoadFromFile(void)
1515
{
1616
addNumberProc addNumber;
1717
HRSRC resourceInfo;
1818
DWORD resourceSize;
1919
LPVOID resourceData;
20-
_TCHAR buffer[100];
20+
TCHAR buffer[100];
2121

2222
HINSTANCE handle = LoadLibrary(DLL_FILE);
2323
if (handle == NULL)
@@ -52,7 +52,7 @@ void LoadFromMemory(void)
5252
HMEMORYRSRC resourceInfo;
5353
DWORD resourceSize;
5454
LPVOID resourceData;
55-
_TCHAR buffer[100];
55+
TCHAR buffer[100];
5656

5757
fp = _tfopen(DLL_FILE, _T("rb"));
5858
if (fp == NULL)

0 commit comments

Comments
 (0)