powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / как передать строковую переменную в процедуру?
24 сообщений из 24, страница 1 из 1
как передать строковую переменную в процедуру?
    #32730438
Eugenia
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
при определении
char str
как я понимаю, строка может быть только до 2-х символов
Как передать в процедуру строковую перменную типа "С:\bla-bla-bla\bla\bla.doc"?
...
Рейтинг: 0 / 0
как передать строковую переменную в процедуру?
    #32730469
funikovyuri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
см.
Код: plaintext
1.
std::string
char *str
...
Рейтинг: 0 / 0
как передать строковую переменную в процедуру?
    #32730495
Eugenia
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот такой текст:

#include "stdafx.h"
#include "resource.h"
#include <string.h>
#include <string>

void main ()
{
std::string;
char *eventLogFileName;


eventLogFileName='Z:\\home\\Soshkina\\include virtual.doc';
ShellExecute (NULL,"edit", eventLogFileName,NULL,NULL,SW_NORMAL);
}

дает ошибку:
C:\WINNT\system32\OpenForApd.cpp(16) : error C2015: too many characters in constant
...
Рейтинг: 0 / 0
как передать строковую переменную в процедуру?
    #32730517
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
char * path = new char[MAX_PATH];
path = "c:\\filename";


 ш
(';')
(V),(V),,
Код: plaintext
 JS 
...
Рейтинг: 0 / 0
как передать строковую переменную в процедуру?
    #32730520
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да и не забываем :)

delete path;


 ш
(';')
(V),(V),,
Код: plaintext
 JS 
...
Рейтинг: 0 / 0
как передать строковую переменную в процедуру?
    #32730551
Eugenia
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
код:

#include "stdafx.h"
#include "resource.h"
#include <string.h>
#include <string>



//void open_file (char path);

void main ()
{
char * path = new char[MAX_PATH];
path = "Z:\\home\\Soshkina\\include virtual.doc";

ShellExecute (NULL,"edit", path,NULL,NULL,SW_NORMAL);
delete path;

}

Ошибки:

nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __endthreadex
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __beginthreadex

Что это??
Что я не правильно делаю????
...
Рейтинг: 0 / 0
как передать строковую переменную в процедуру?
    #32730570
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://www.sql.ru/forum/actualthread.aspx?tid=54317&hl=unresolved+external+symbol+__endthreadex

Вот сдесь описанно как бороться ..


 ш
(';')
(V),(V),,
Код: plaintext
 JS 
...
Рейтинг: 0 / 0
как передать строковую переменную в процедуру?
    #32730596
zuzu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EugeniaВот такой текст:

#include "stdafx.h"
#include "resource.h"
#include <string.h>
#include <string>

void main ()
{
std::string;
char *eventLogFileName;


eventLogFileName='Z:\\home\\Soshkina\\include virtual.doc';
ShellExecute (NULL,"edit", eventLogFileName,NULL,NULL,SW_NORMAL);
}

дает ошибку:
C:\WINNT\system32\OpenForApd.cpp(16) : error C2015: too many characters in constant

pomeneai odinarnie kaviciki na dvoinie !!!,
potrudisi citati oshibki cito vidaet tebe sistema.
...
Рейтинг: 0 / 0
как передать строковую переменную в процедуру?
    #32730602
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а ну да в принципето я что то ....

вобчем можно просто так

char * c = "Z:\\home\\Soshkina\\include virtual.doc";

...


 ш
(';')
(V),(V),,
Код: plaintext
 JS 
...
Рейтинг: 0 / 0
как передать строковую переменную в процедуру?
    #32730744
--null--
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторстрока может быть только до 2-х символов

я все понимаю...
но почему именно до 2-х символов???
ведь в указанной ошибке нужен один.
Откуда такая логика? :-)
...
Рейтинг: 0 / 0
как передать строковую переменную в процедуру?
    #32731587
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уважаемая Евгения! Мне интересна ваша логика. Если переменная
char str;
то в нее , как вы полагаете, можно "запихнуть" не более двух символов.
Вопрос : почему именно двух, а не трех, пяти, одного ?

Предложенный же вам фрагмент кода надо писать так :
Код: plaintext
1.
2.
3.
4.
5.
6.
#include "shellapi.h"

void main ()
{
ShellExecute (NULL,"Z:\\home\\Soshkina\\include virtual.doc", path,NULL,NULL,SW_NORMAL);
}

Неправда ли, код стал проще ?

[quote Евгения]
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __endthreadex
Что это??
[/quote]

Это вы неправильно собираете (link) вашу программу. Вы должны подключить к ней нужные библиотеки. И не подключать ненужные, а именно - MFC.
...
Рейтинг: 0 / 0
как передать строковую переменную в процедуру?
    #32731590
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JibSkeartда и не забываем :)
delete path;


Ага, и перестаем мозги пудрить незрелым людям.
...
Рейтинг: 0 / 0
как передать строковую переменную в процедуру?
    #32731618
Eugenia
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
мне надо передать указание пути к файлу ("Z:\\home\\Soshkina\\include virtual.doc" - для примера) в процедуру.
за этим и нужна текстовая переменная

спасибо за советы...

По поводу 2-х символов - этот вывод сделан методом проб и ошибок (т.е. программа работала только в случае если строка состояла из 2-х символов и меньше)

Суть написания этого топика в том, что мне надо создать ДЛЛ которая будет открывать файл лежащий на сервере (путь к файлу передается параметром)
Но в связи с очень плохим знанием С++ я обращаюсь за советом....
...
Рейтинг: 0 / 0
как передать строковую переменную в процедуру?
    #32731661
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А смысл , чтолибо , запускать на сервере ?!

2MasterZiv
А гиде я запудрил мозги ?!
подскажи , буду исправлятся :)


 ш
(';')
(V),(V),,
Код: plaintext
 JS 
...
Рейтинг: 0 / 0
как передать строковую переменную в процедуру?
    #32731685
Alex_VC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В одинарные кавычки заключается символ (char), в двойные - указатель на char (char *) - это уже строка. При "статическом" присваивании char * str="This is my string" - все будет нормально, т.к. идет присвоение строковой константе, а вот ежли str=_str, то тогда надо либо под str память выделять, либо под _str . Где-то так (извините за сумбур)
...
Рейтинг: 0 / 0
как передать строковую переменную в процедуру?
    #32731727
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JibSkeart А гиде я запудрил мозги ?!
подскажи , буду исправлятся :)


Кова фига девушке (если она конечно девушка, а не дядя с бородой, впрочем, тогда наверно не спрашивал бы) написал память динамически выделять ?
Она там нужна, память динамическая ?
...
Рейтинг: 0 / 0
как передать строковую переменную в процедуру?
    #32731731
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZiv JibSkeart А гиде я запудрил мозги ?!
подскажи , буду исправлятся :)


Кова фига девушке (если она конечно девушка, а не дядя с бородой, впрочем, тогда наверно не спрашивал бы) написал память динамически выделять ?
Она там нужна, память динамическая ?

Я же потом исправился :)
...
Рейтинг: 0 / 0
как передать строковую переменную в процедуру?
    #32731737
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EugeniaСуть написания этого топика в том, что мне надо создать ДЛЛ которая будет открывать файл лежащий на сервере (путь к файлу передается параметром)


Евгения, я еще раз предупреждаю, он откроется у тебя НА СЕРВЕРЕ,
на машине, где работает MSSQL Server.
...
Рейтинг: 0 / 0
как передать строковую переменную в процедуру?
    #32731747
Eugenia
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Даже если я ее буду вызывать в коде который на стороне клиента обрабатывается?
...
Рейтинг: 0 / 0
как передать строковую переменную в процедуру?
    #32731812
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JibSkeart
Я же потом исправился :)

Я заметил. Но уже было позно.
...
Рейтинг: 0 / 0
как передать строковую переменную в процедуру?
    #32731826
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EugeniaДаже если я ее буду вызывать в коде который на стороне клиента обрабатывается?

Это как это ? И ты вообще-то писала про расширенную хранимую процедуру.
Кастати, чтобы на сервере на MSSQL открыть файл, никакую XP писать не надо, можно воспользоваться стандартной xp_cmdshell.
...
Рейтинг: 0 / 0
как передать строковую переменную в процедуру?
    #32731848
Eugenia
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Задача такая. Имеется база документооборота. Интерфейс написан на АСП, сама база на SQL Server-е.
В базу надо добавить функцию изменения вложений (т.е. имеется письмо и вложение. Вложения лежат на сервере). Средствами HTML\ASP вложение можно открыть только на чтение, а надо наизменение.
Допустим, принажатии на ссылку с именем вложения, файл вложения копируется на общий сетевой диск, открывается оттуда, его меняют, потом файл копируется обратно на свое место на сервере. (как обратно - еще не знаю - но придумаю :)

Этот вопрос можно решить с помощью xp_cmdshell??
...
Рейтинг: 0 / 0
как передать строковую переменную в процедуру?
    #32731856
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно хранить все эти документы , если это не критично
в BLOB полях ...


 ш
(';')
(V),(V),,
Код: plaintext
 JS 
...
Рейтинг: 0 / 0
как передать строковую переменную в процедуру?
    #32732586
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EugeniaЗадача такая. Имеется база документооборота. Интерфейс


Да знаю я твою задачу. Ты похоже не понимаешь, как работают системы типа клиент-сервер. Клиент НЕ МОЖЕТ по HTTP отредактировать файл на сервере.
Ты его должна скачать на клиента ( это уже HTTP может), отредактировать, потом послать серверу. Сервер его должен получить и что-то сделать, напр., положить вместо старой версии.

(как обратно - еще не знаю - но придумаю :)

Вот и думай, а не мозги нам пудри ...

Этот вопрос можно решить с помощью xp_cmdshell??
НЕТ!!
Нет, ну файл-то скопировать можно, если права и шары есть.
Но это все криво ...
...
Рейтинг: 0 / 0
24 сообщений из 24, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / как передать строковую переменную в процедуру?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]