2 / 2 / 0
Регистрация: 07.10.2013
Сообщений: 50
1

Не выходит открыть файл, в названии которого кириллица (FASM)

07.11.2013, 13:53. Показов 1269. Ответов 7
Метки нет (Все метки)

Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
format PE GUI 4.0
entry start
 
include 'win32a.inc'
 
;section '.data' data readable writeable
 
dataArr db 0x0C,0x83,0xBB,0x30,0x77,0x00,0x00,0x00,0x90,0x90,0x90,0x90,0x90,0x90,0x90,0x75
sizeArr dd 16
dataOffset dd 0x8C05C
fName  db 'Пример 2.txt',0
hFile dd ?
 
;section '.code' code readable executable
 
start:
 
 invoke CreateFile,fName,GENERIC_WRITE,FILE_SHARE_WRITE,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_ARCHIVE,NULL
  cmp eax,INVALID_HANDLE_VALUE
  jz EW
  mov [hFile],eax
  invoke SetFilePointer,[hFile],[dataOffset],NULL,0
  invoke WriteFile,[hFile],dataArr,[sizeArr],sizeArr,NULL
  invoke CloseHandle,hFile
 
EW:
  invoke ExitProcess, NULL
 
;section '.idata' import data readable writeable
 
library kernel,'KERNEL32.DLL'
 
import kernel,\
CreateFile,'CreateFileA',\
WriteFile,'WriteFile',\
CloseHandle,'CloseHandle',\
ExitProcess,'ExitProcess',\
SetFilePointer,'SetFilePointer'
Прекращена работа программы app.exe
Сигнатура проблемы:
Имя события проблемы: APPCRASH
Имя приложения: app.exe
Версия приложения: 0.0.0.0
Отметка времени приложения: 527b60e0
Имя модуля с ошибкой: StackHash_0a9e
Версия модуля с ошибкой: 0.0.0.0
Отметка времени модуля с ошибкой: 00000000
Код исключения: c0000005
Смещение исключения: 000010fc

Это возможно исправить?
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.11.2013, 13:53
Ответы с готовыми решениями:

Открыть файл с самой поздней датой в названии
Добрый вечер всем ! Просьба помочь в решениии такого В папке Aрхивы в корне диска D лежат Excel...

Кириллица в названии файла
Здравствуйте, можно ли оперировать файлами, в названии которых есть кириллица, с помощью прерывания...

[Fortran-90] Cоздать файл txt, в названии которого присутствуют числа, полученные ранее при расчётах
Нужно, чтобы программа создала файл txt, в названии которого должны присутствовать числа,...

Не выходит открыть второй файл
Ниже представлена часть программы, все выполняется правильно, но мне необходимо повторить все то же...

7
Клюг
7670 / 3185 / 382
Регистрация: 03.05.2011
Сообщений: 8,381
07.11.2013, 14:49 2
Файл создаётся, дальше - сам.
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
;format PE GUI 4.0
format PE console 4.0
 
;entry start
 
include 'win32a.inc'
 
;section '.data' data readable writeable
  
;section '.code' code readable executable
 
start:
 
 invoke CreateFile,fName,GENERIC_WRITE,FILE_SHARE_WRITE,NULL,OPEN_ALWAYS,FILE_ATTRIBUTE_ARCHIVE,NULL
  cmp eax,INVALID_HANDLE_VALUE
  jz EW
  mov [hFile],eax
  invoke SetFilePointer,[hFile],[dataOffset],NULL,0
  invoke WriteFile,[hFile],dataArr,[sizeArr],sizeArr,NULL
  invoke CloseHandle,hFile
 
EW:
  invoke ExitProcess, NULL
dataArr db 0x0C,0x83,0xBB,0x30,0x77,0x00,0x00,0x00,0x90,0x90,0x90,0x90,0x90,0x90,0x90,0x75
sizeArr dd 16
dataOffset dd 0x8C05C
fName  db 'Пример 2.txt',0
;fName  db 'Example.txt',0
hFile dd ?
 
;section '.idata' import data readable writeable
; import data in the same section
 data import
 
library kernel,'KERNEL32.DLL'
 
import kernel,\
CreateFile,'CreateFileA',\
WriteFile,'WriteFile',\
CloseHandle,'CloseHandle',\
ExitProcess,'ExitProcess',\
SetFilePointer,'SetFilePointer'  
end data
1
2 / 2 / 0
Регистрация: 07.10.2013
Сообщений: 50
07.11.2013, 20:10  [ТС] 3
Проблема только в отсутствии data import, получается. Но почему до этого работало, но только не принимало криллицу? Магия?
0
Клюг
7670 / 3185 / 382
Регистрация: 03.05.2011
Сообщений: 8,381
07.11.2013, 20:15 4
Цитата Сообщение от burning_steam Посмотреть сообщение
Магия?
Нет. FASM - у него много хитростей.
1
2 / 2 / 0
Регистрация: 07.10.2013
Сообщений: 50
07.11.2013, 20:52  [ТС] 5
Цитата Сообщение от Charles Kludge Посмотреть сообщение
FASM - у него много хитростей.
Вы не могли бы объяснить в чем состоит эта хитрось или где о ней и подобных узнать можно?
0
Клюг
7670 / 3185 / 382
Регистрация: 03.05.2011
Сообщений: 8,381
07.11.2013, 21:02 6
http://board.flatassembler.net/
1
2 / 2 / 0
Регистрация: 07.10.2013
Сообщений: 50
07.11.2013, 21:58  [ТС] 7
Как всегда английский... Но все равно спасибо. Буду таким образом английский учить.
0
Charles Kludge
07.11.2013, 22:30     Не выходит открыть файл, в названии которого кириллица (FASM)
  #8

Не по теме:

Цитата Сообщение от burning_steam Посмотреть сообщение
Как всегда английский...
Дык, переквалифицируйтесь в одинэсники - там всё на русском и мышой шмыг-шмыг... шмыг-шмыг...:jokingly:

2
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.11.2013, 22:30

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Не выходит открыть текстовый файл через командную строку
#include<iostream> #include<fstream> using namespace std; int main(int argc, char*argv) { ...

OpenSuSE - как открыть файл через терминал, с командой cat не выходит
открываю ОС, захожу через пользователя ROOT, открываю терминал ( xterm ) ввожу адрес каталога,...

Открыть файл, имя которого задается с клавиатуры. Переписать в новый файл только те слова, которые состоят из цифр
В коде надо сделать так, чтобы он находил цифры, а не игнорировал их, и, по возможности выводил на...

Открыть файл, имя которого задается с клавиатуры. Посчитать количество байт в этом файле. Первую половину прочитанного файла записать в другой файл.
ребят помогите! плиз!!1. Открыть файл, имя которого задается с клавиатуры. Посчитать и вывести на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.