|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Окт 31, 2004 12:22:42 GetModuleFileName получает полное имя файла, например C:\test.exe. Существуют ли простые способы получения только имени(без пути и расширения, например test)? |
|
|
Дата: Окт 31, 2004 12:44:14 Ну можно же отсечь до знака "/" (если смотреть справа на лево)... Аналогично до знака "."... |
|
|
Дата: Окт 31, 2004 18:57:07 · Поправил: Johnikum Только до знака "." нужно отсекать с конца. |
|
|
Дата: Окт 31, 2004 20:05:23 · Поправил: cresta . |
|
|
Дата: Окт 31, 2004 20:33:25 Если не обрабатывать исключительные ситуации, как отсутствие в пути '.' и '\', то код может быть приблизительно такой: invoke GetModuleFileName, NULL, OFFSET sBuff, 01000h
test eax, eax
jz @exit
lea edx, [eax+sBuff-1]
@@:
cmp BYTE PTR [edx], '.'
je @F
dec edx
jmp @B
@@:
mov BYTE PTR [edx], 0
@@:
cmp BYTE PTR [edx-1], '\'
je @F
dec edx
jmp @B
@@:
invoke MessageBox, 0, edx, 0, 0
@exit: |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.048 |