Форум программистов, компьютерный форум CyberForum.ru

GetFileType и GetCosoleCursorInfo - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ системы нелинейныx уравнений http://www.cyberforum.ru/cpp-beginners/thread514491.html
задача такова решить систему нелинейных уравнений методом Ньютона F(x,y)=x^3-4*x+3-y^2 G(x,y)=x-(y-2)^2+1 Проблема состоит в том что не заполняется массив коэффициентов C=W*F где W-обратная матрица матрицы Якоби F- численный вектор составленный из F(x,y) и G(x,y) в точке x0,y0 помогите пожалуйста с проблемой=)
C++ Определить принадлежность точки заданной области Добрый день,спасибо что откликнулись на мою просьбу! Дело в том,что мне необходимо сдать программу в понедельник.Тема задания "Программирование алгоритмов разветвленой структуры". Само задание: "По данным координатам Х и Y определить, где находится точка 1) внутри заштрихованной области; 2)вне заштрихованной области; 3) на границе этой области; Текст программы на языке С++ : #include... http://www.cyberforum.ru/cpp-beginners/thread514483.html
C (СИ) Найти наибольшую клику в заданном орграфе, используя алгоритм нахождения независимых множеств
Помогите написать программу в С. Найти наибольшую клику в заданном орграфе, используя алгоритм нахождения независимых множеств Сам метод: Клика Антиподом понятия независимого множества является понятие клики. Подмножество U вершин графа G называется кликой, если любые две входящие в него вершины смежны, т.е. если порожденный подграф G(U) является полным. Клика называется...
Как получить описание типа файла по его расширению C++
Подскажите пожалуйста какие есть функции (например WINAPI) с помощью которых можно получить описание типа файла (т.е. описание которое дает программа с которой файл ассоциирован в системе, например *.txt - текстовый документ, и т.д.). Я нашел один способ - данные из реестра. Но вот только строка с описанием типа файла на английском языке. И почему-то не удается получить описание *.xml файла...
C++ Borland c++ 3.1 на Windows7 64-bit через DosBox http://www.cyberforum.ru/cpp-beginners/thread514453.html
программа выводит на экран всякие линии, кружочки и т.п одним словом графику. у меня W7 64битка, запускаю через Borland c++ 3.1 с помощью DosBox. сначала все работало хорошо, компилировало, запускало на ура. сейчас компилировать компилируется, но не запускается. выводит вот такой бред:
C++ помогите отличить разыменование от указателя люди помогите отличить разыменование от указателя.дайте ссылку ,книгу хот что угодно.я читал много книг но ни в одном не нашел чтоб там было и разыменование и указатель.у всех один ест а другой нету( подробнее

Показать сообщение отдельно
-=ЮрА=-
Заблокирован
Автор FAQ
11.03.2012, 16:25     GetFileType и GetCosoleCursorInfo
код DLL-ки
C
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
// albuDLL.cpp : Defines the entry point for the DLL application.
//
 
#include "stdafx.h"
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#ifdef __cplusplus 
#define EXPORT extern "C" __declspec (dllexport) 
#else 
#define EXPORT __declspec (dllexport) 
#endif 
 
//Объявление экспортируемых функций
EXPORT BOOL PrintInConsole(HANDLE,LPCTSTR);//Служит для вывода на экран русского текста 
EXPORT BOOL GetInfoOfCsor (HANDLE);
EXPORT BOOL GetTypeOfFile (HANDLE,LPCTSTR);
 
BOOL APIENTRY DllMain( HANDLE hModule, 
                       DWORD  ul_reason_for_call, 
                       LPVOID lpReserved
                     )
{
    return TRUE;
}
 
BOOL PrintInConsole(HANDLE hConsoleOutput, LPCTSTR sMSG)
{
    BOOL bRet = FALSE;
    long sLen   = -1;
    char * sBUF = NULL;
    DWORD dwBytes;
    if(sMSG)
    {
        sLen = strlen(sMSG);
        if((sBUF = (char *)malloc((1 + sLen)*sizeof(char))))
        if((bRet = CharToOem(sMSG,sBUF)))
            bRet = WriteConsole(hConsoleOutput,sBUF,strlen(sBUF),&dwBytes,NULL);
    }
    if(sBUF)
        free((void *)sBUF);
    return bRet;
}
 
EXPORT BOOL GetInfoOfCsor(HANDLE hConsoleOutput)
{
    char sBuf[256] = {0};
    CONSOLE_CURSOR_INFO pCursorInfo;
    BOOL bRet = GetConsoleCursorInfo
        (
            hConsoleOutput, // дескриптор буфера экрана
            &pCursorInfo    // информация о курсоре
        );
    if(!bRet)
        PrintInConsole(hConsoleOutput,"Невозможно получить информацию о курсоре\n");
    else
    {
        //О полях структуры CONSOLE_CURSOR_INFO здесь 
        //http://msdn.microsoft.com/en-us/library/windows/desktop/ms682068(v=vs.85).aspx
        sprintf(sBuf,"%% символьных ячеек которые заполняет курсор : %u\n",pCursorInfo.dwSize);
        PrintInConsole(hConsoleOutput,sBuf);
 
        sprintf(sBuf,"видимость курсора : %s\n",(pCursorInfo.bVisible ? "ДА" : "НЕТ"));
        PrintInConsole(hConsoleOutput,sBuf);
        system("pause");
    }
    return bRet;
}
 
EXPORT BOOL GetTypeOfFile(HANDLE hConsoleOutput, LPCTSTR sFilePath)
{
    char sBuf[256] = {0};
    BOOL bRet = FALSE;
    HANDLE hFile = CreateFile(sFilePath,GENERIC_READ,0,NULL,OPEN_EXISTING,0,0);
    if(hFile == INVALID_HANDLE_VALUE)
    {
        sprintf(sBuf,"Не могу отрыть файл : %s\n",sFilePath);
        PrintInConsole(hConsoleOutput,sBuf);
    }
    else
    {
        //О GetFileType [url]http://www.vsokovikov.narod.ru/New_MSDN_API/Menage_files/fn_getfiletype.htm[/url]
        switch(GetFileType(hFile))
        {
        case FILE_TYPE_CHAR:
            bRet = PrintInConsole
            (
                hConsoleOutput,
                "Указанный файл - символьный файл, обычно устройства LPT или консоли\n"
            );
            break;
        case FILE_TYPE_DISK:
            bRet = PrintInConsole
            (
                hConsoleOutput,
                "Указанный файл - файл на диске\n"
            );
            break;
        case FILE_TYPE_PIPE:
            bRet = PrintInConsole
            (
                hConsoleOutput,
                "Указанный файл является или именованным или анонимным каналом\n"
            );
            break;
        default:
            bRet = PrintInConsole
            (
                hConsoleOutput,
                "Тип указанного файла неизвестен, или функция завершилась ошибкой\n"
            );
            break;
        }
        CloseHandle(hFile);
    }
    return bRet;
}
Ниже прикреплён откомпилированный проект
Вложения
Тип файла: rar albuDLL.def.rar (479 байт, 4 просмотров)
Тип файла: rar albuDLL.dll.rar (18.3 Кб, 4 просмотров)
Тип файла: rar albuDLL.lib.rar (688 байт, 4 просмотров)
Тип файла: rar albuDLL_proj.rar (28.9 Кб, 4 просмотров)
 
Текущее время: 04:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru