Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Программирование в среде .NET (ASP.NET,ADO.NET) на C#/VB.NET

Автор: Omicron_Persey_8
Дата сообщения: 23.04.2009 15:11
TeXpert
Спасибо, посмотрю обязательно. Да и насчет отдельной темы, я думаю будет актуально

Добавлено:
Skyer1
Сам-то пробовал конвертировать? Где затык?
Автор: Skyer1
Дата сообщения: 23.04.2009 16:59
Посмотрите компилировал только что на MS visual studio 2008
http://pic.ipicture.ru/uploads/090423/WSVG1O4X5C.jpg
Автор: Omicron_Persey_8
Дата сообщения: 24.04.2009 09:12
Skyer1
Что я там должен увидеть? Можно поподробнее?
Автор: Disperados
Дата сообщения: 24.04.2009 12:06
Продублирую немного свое предыдущее сообщение


Есть Родительская Form1, через меню открываю диалоговое Form2


Цитата:
private void barButtonItem3_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
Form 2frmForm2 = new Form2();
frmForm2.ShowDialog();

}


задаю некие параметры, кнопкой открываю еще одну форму Form3(закрывая Form2) куда и передаю параметры,

Цитата:

private void simpleButton1_Click(object sender, EventArgs e)
{
Form3 frmForm3 = new Form3();
frmForm3.MdiParent = ApplicationFormList.Form1Form;//сделал так
this.Close();


}



Есть еще один вопрос.
По дабл клику на контроле экземпляра Form3 надо открыть Form2 для редактирования параметров.Как это можно реализовать?


Цитата:

private static void chartControl2_DoubleClick(object sender, EventArgs e)
{



}

Сорри за возможно идиотские вопросы!
Автор: Omicron_Persey_8
Дата сообщения: 24.04.2009 12:49
Disperados
Да реализовать просто. В Form2 делаешь public метод, который принимает значения для инициализации Form2, а дальше как обычно

Код: Form2 frm = new Form2();
frm.InitForm2(param1, param2, param3); // или что-то типа того
frm.ShowDialog();
Автор: Skyer1
Дата сообщения: 24.04.2009 13:16

Цитата:
Что я там должен увидеть? Можно поподробнее?

Я имел ввиду, что у меня на С++ все компилируется нормально, я просил помочь преоброзовать код для того, чтобы можно было скомпилировать это приложение на С#(тоже как и на С++ в консоле)
Автор: Omicron_Persey_8
Дата сообщения: 24.04.2009 13:38
Skyer1
Перевел,
[more=Код]
Код: class Program
{
static void Main(string[] args)
{
int number = 1, num, ras, z = 1, size, quadroSize = 100;
for (int quadro = 1; quadro < quadroSize; quadro++)
{
size = numRasryad(quadro * quadro);
int[] array = new int[size];
for (int i = 0; i < size; i++)
{
array[i] = 0;
}
for (int i = size - 1; i >= 0; i--)
{
array[i] = (quadro * quadro) / number % 10;
number *= 10;
}
if (size == 1)
Console.WriteLine("Number: {0} Quadro = {1} - Palindrom.", quadro, quadro * quadro);
else if (size == 2)
{
if(array[0]==array[1])
Console.WriteLine("Number: {0} Quadro = {1} - Palindrom.", quadro, quadro * quadro);
}
else if (size == 3)
{
if(array[0]==array[2])
Console.WriteLine("Number: {0} Quadro = {1} - Palindrom.", quadro, quadro * quadro);
}
else if (size == 4)
{
if (array[0] == array[3] && array[1] == array[2])
Console.WriteLine("Number: {0} Quadro = {1} - Palindrom.", quadro, quadro * quadro);
}
else
Console.WriteLine("Error: Sorry...");
number = 1;
}
z = int.Parse(Console.ReadLine());

Console.ReadKey();
}

static int numRasryad(int numRas)
{
int num1 = numRas, i = 0;
while (num1!=0)
{
num1 /= 10;
i++;
}
return i;
}
}
Автор: Disperados
Дата сообщения: 24.04.2009 14:13
Omicron_Persey_8

А можно немного подробнее с примером метода.
Изучаю дотнет третируя рунет))
Автор: Omicron_Persey_8
Дата сообщения: 24.04.2009 15:27
Disperados
Можно и с примером

Добавлено:

Цитата:
Изучаю дотнет третируя рунет))

И как, успешно???
Автор: avkorets
Дата сообщения: 29.04.2009 14:49
Всем привет!
Вернусь к вопросу об отправке почты..заставил я ее отправлять но есть вопрос можно ли упростить малось код..например не вызывая одну форму из другой..
Вот мой код.

Код:
первая форма
private void button1_Click(object sender, EventArgs e)
{
Form2 f;
f = new Form2();
f.Dispose();
}
вторая форма
public Form2()
{
InitializeComponent();
try
{
SmtpClient smtpC;
MailAddress to;
MailAddress from;
MailMessage mmMailMessage;
to = new MailAddress("n@.ru");
from = new MailAddress("n@.ru");
mmMailMessage = new MailMessage(from, to);
smtpC = new SmtpClient();

smtpC.Host = "mailhost";
smtpC.Port = 25;
smtpC.EnableSsl = false;
smtpC.DeliveryMethod = SmtpDeliveryMethod.Network;

mmMailMessage.Body = "asdfasdfas";
smtpC.ServicePoint.MaxIdleTime = 1;
smtpC.ServicePoint.ConnectionLimit = 1;
smtpC.Send(mmMailMessage);
this.Dispose();
}
catch (SmtpException eb)
{
MessageBox.Show(eb.Message.ToString());
}
}
Автор: Granmer
Дата сообщения: 30.04.2009 13:49
Хочется принимать и отправлять смс через обычный телефон из программы, написанной на .net. Теоретически - всё просто, подключаемся к com-порту и шлём AT-команды. Но, синтаксис команд мне не известен... по крайней мере пока не нашел. Может кто сталкивался с подобным? Или фреймворки/компоненты существуют? Винмобайл с его мапи не интересен, нужны обычные телефоны.
Автор: 085
Дата сообщения: 01.05.2009 10:11
Люди хочу сделать интерфейс на WPF,оно использует только ресурсы видеокарты ??
Автор: Omicron_Persey_8
Дата сообщения: 01.05.2009 17:58

Цитата:
Люди хочу сделать интерфейс на WPF,оно использует только ресурсы видеокарты ??

Нет, еще процессор, память и опосредованно хард
А вообще в WPF есть класс System.Windows.Media.RenderCapability. У него есть свойство Tier (Уровень отрисовки) которое содержит коды:
0 - Для приложения на этом устройстве аппаратное ускорение недоступно.
1 - Для данной видеоплаты доступно частичное графическое аппаратное ускорение. Это соответствует версииDirectX выше или равной 7.0, но меньше 9.0.
2 - Отрисовка уровня 2 означает, что большая часть графических возможностей WPF должна использовать аппаратное ускорение при условии, что необходимые системные ресурсы не исчерпаны. Это соответствует DirectX версии, которая больше или равна 9.0.
Подробнее Прошу прощения за качество
А, вот еще это можно посмотреть. Но это уже для законченных любителей
Автор: 085
Дата сообщения: 01.05.2009 20:48
Omicron_Persey_8 ;(( Понятно спасибо.Классная штука вроде,если в игры не играть то будет на что тратить ресурсы машины
Автор: avkorets
Дата сообщения: 04.05.2009 19:20
ребят, подскажите пожайлуста.
Как реализовать запуск ехе с параметрами определенного файла конфига через ярлык?
т.е. у меня есть один ехе и много конфигов и соответсвенно какой конфиг в ярлыке запуска ехе укажу тот и подгрузиться...
конфиг в хмл.
спасибо!
Автор: Omicron_Persey_8
Дата сообщения: 05.05.2009 12:13
avkorets
В свойствах ярлыка в поле Объект пишешь что-то типа
C:\WINDOWS\system32\ping.exe 192.168.5.5 /t
Ну, и если путь содержит пробелы, то его надо взять в кавычки ""

А причем тут .NET ???
Автор: avkorets
Дата сообщения: 05.05.2009 12:53
Omicron_Persey_8
ну так есть приложение написанное на нет, с файлом конфигурации...
только вот со временем пондобилось чтобы это приложение могло подгружать иной файл конфигурации.
тобишь запускаем с сетевого диска ехе с фалом конфига 1
другой пользователь запускает тот же ехе но с файлом конфига 2 и т.д.
вот как то так...
Автор: Omicron_Persey_8
Дата сообщения: 05.05.2009 13:57
avkorets
А имя файла конфигурации передается в виде параметра в exe'шник?
Автор: Lazy KoT
Дата сообщения: 05.05.2009 14:05
avkorets
Может просто переименовать .exe и соответственно конфиг а пользователям ярлыки повыводить. ((;

Может это поможет:

Цитата:
App.Config Files
By default, the application configuration file of the default appdomain (and other appdomains for v1.1 and later) is in the process exe’s directory and named the same as the process exe + ".config". This is true even if that exe is unmanaged. Also, note that a web.config file is an app.config - ASP.NET sets that as the config file for your appdomain.

To change the config file, set an AppDomainSetup.ConfigurationFile to the new location and pass that AppDomainSetup to your call to AppDomain.CreateDomain(). Then, run all of the code requiring that application config from within that new appdomain.

Note, though, that you won’t be able to choose the CLR version by setting the ConfigurationFile – at that point, a CLR will already be running, and there can only be one per process.

Application configuration files are per-appdomain. So, you can set a ‘dll config’ by using the method above, but that means that it will be used for the entire appdomain, and it only gets one.
Автор: avkorets
Дата сообщения: 05.05.2009 14:31
Omicron_Persey_8
выроде нет.ехе берет по умолчанию данные из файла конфига с именем "имяприложения.ехе.Config" если его переименовать то соответсвенно работать ничо не будет =)
ConfigurationManager.AppSettings["x"]; таким путем из конфига берем данные

Lazy KoT
как вариант =)
благо ехе по 100 кб весит а нужно 10 копий =)
Автор: avkorets
Дата сообщения: 06.05.2009 00:24
вот вроде бы нашел.
вот ссылка
Здесь
Автор: Omicron_Persey_8
Дата сообщения: 06.05.2009 07:05
avkorets

Цитата:
вот ссылка
Здесь

Ну так я, собственно это и предлагал... Прога из параметров запуска тянет имя файла конфигурации, а потом его и подгружает. А имя файла конфига передается в виде параметра командной строки:

Код: c:\> yourapp.exe myruntimeconfigfile1.config
c:\> yourapp.exe myruntimeconfigfile2.config
Автор: avkorets
Дата сообщения: 06.05.2009 11:55
Omicron_Persey_8
Чего то запутался вконец...
понял что нужно крутить аргументы Main ();
а как и куда....
вот по ссылке например я понял что имя файла вносится в конфиг и уже потом с него считывается и запускается..А как сделать чтоб сразу считывал из консоли и при этом его можно было скомпилить не понял =)
Автор: Omicron_Persey_8
Дата сообщения: 06.05.2009 15:07
avkorets
Имя файла ни в какой конфиг не вносится. Оно передается проге в виде параметра командной строки. А затем прога сама анализирует параметры и делает с ними что хочет.

Точка входа в exe-сборку функция Main() может принимать массив строк args - параметры командной строки.
При запуске приложения program.exe config1.xml config2.xml в массиве args будет две СТРОКИ: "config1.xml" и "config2.xml". Ну и дальше делай с ними что хочешь: грузи конфигурации из файлов, например.
Автор: avkorets
Дата сообщения: 06.05.2009 23:10
Omicron_Persey_8
спасибо огромное, что возися со мной =)
про args я уже понял давно я никак это не могу применить...

Код:
static void Main(string[] args)
{
setConfigFile(args);
}

static void setConfigFile(string[] args)
{
string runtimeconfigfile;
if (args.Length == 0)
{
runtimeconfigfile = "cfg_1.exe.Config";
}
else
{
runtimeconfigfile = args[0];
}
}
Автор: Omicron_Persey_8
Дата сообщения: 07.05.2009 07:01

Цитата:

Код: else
{
runtimeconfigfile = args[0];
}
Автор: avkorets
Дата сообщения: 07.05.2009 08:46
Omicron_Persey_8
Environment.CommandLine    
"\"C:\\my\\FileMod\\bin\\Release\\FileMod.exe\" "    
не видно имя конфига....
а зачем вторая часть?
Мне не нужно чтобы при запуске сначала обращался к конфигу для того чтобы выяснить какой конфиг ему подгружать...нужно передать сразу через цмд..
если я все понял так как есть =)
Автор: Omicron_Persey_8
Дата сообщения: 07.05.2009 10:19
avkorets
Вторая часть как раз и отвечает за то, чтобы подгрузить нужный конфиг, имя файла которого сидит в runtimeconfigfile. Без него ты максимум найдешь только файл, но параметры из него не подгрузишь.
Меня интересует, что сидит в args сразу после запуска приложения. Найди Main() и на первый оператор ставь breakpoint и смотри что сидит в args.
И, судя по
Цитата:
Environment.CommandLine
"\"C:\\my\\FileMod\\bin\\Release\\FileMod.exe\" "

ты не передаешь ни одного параметра командной строки. Если работаешь в MS VS, то в свойствах проекта на вкладке Debug
пишешь через пробел параметры (в данном случае 2 параметра: config1.xml и config2.xml)
Автор: avkorets
Дата сообщения: 07.05.2009 10:53
Omicron_Persey_8
Все с параметрами разобрался передавать научился.
Как теперь заменить файл конфига который подгружается по умолчанию на тот который передал?
я так понимаю тут вступает в силу вторая часть?
когда я использую вторую часть то единственное что изменяется это в файле конфига который у меня подгружается по умолчанию добавляется запись к тегу
<appSettings file="переданное_имя_файла">
и все.Конфиг с именем переданное_имя_файла не подгружается...Либо опять чот накосячил =)
Автор: Omicron_Persey_8
Дата сообщения: 07.05.2009 13:34
avkorets
А конфиги сильно различаются?
А что должно меняться в файле конфига? Ты своей проге подсунул новый файл конфига
Цитата:
config.AppSettings.File = runtimeconfigfile;

точнее, не новый файл, а файл с дополнительными настройками.
Затем сохранил измененный ОСНОВНОЙ файл конфигурации, (прога дописала)
Цитата:
<appSettings file="переданное_имя_файла">

И уже после этого перечитываешь параметры конфигурации, которые сидят в секции appSettings и ты к ним можешь обратиться из своей проги:

Цитата:
ConfigurationManager.RefreshSection("appSettings");


Если есть MSDN, посмотри инфу по запросу: appSettings element.

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102

Предыдущая тема: Как удалить/добавить/отключить/включить устройство?


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.