这不是一个有黑/白是/否答案的问题,这更像是一个建议请求,所以我希望这不会违反任何规则,如果确实如此,我深表歉意,如果被要求将删除。
我会将我认为最有帮助的答案标记为正确答案。
基本上我在一家拥有 PBX 电话系统的公司工作。它拥有三台名为“Maximisers”的机器,第一台完全在内存中运行基于 linux 的命令行操作系统,并控制另外两台。
第一个 maximiser 也有一个 LDAP 数据库,我对它知之甚少。
每个都有 15 个以太网端口,每个端口都有一个 SIP 电话插入其中。每个“Maximiser”也有 4 个 LAN 端口。
问题是我对幕后发生的事情知之甚少。我们需要完成的任何工作都依赖于为 VPN 提供硬件的公司。
我要求的是有人为我指出正确的方向。我想以编程方式(最好在 C# .Net 中)检索有关电话系统在任何给定时间发生的情况的信息,记录通话并控制电话,这样我们就可以拨打出站电话,而无需电话中的人员输入数字本身。
时间在这里不是问题,我有足够的时间阅读我需要阅读的任何书籍,我只需要一些关于从哪里开始的指导。
提前致谢
我正在尝试使用C#中的System.Xml.Xmlwriter创建具有多个名称空间的XML文档,并在编译时收到以下错误:
在同一个开始元素标记内,前缀''无法从''重新定义为'http://www.acme.com/BOF'.
我的全部代码如下:
XmlWriterSettings settings = new XmlWriterSettings { Encoding = Encoding.UTF8, Indent = true };
XmlWriter writer = XmlWriter.Create("C:\\ACME\\xml.xml", settings);
writer.WriteStartDocument();
writer.WriteStartElement("BOF");
writer.WriteAttributeString("xmlns", null, null, "http://www.acme.com/BOF"); //This is where I get my error
writer.WriteAttributeString("xmlns", "xsi", null, "http://www.w3.org/2001/XMLSchema-instance");
writer.WriteAttributeString("fileName", null, null, "test.xml");
writer.WriteAttributeString("date", null, null, "2011-10-25");
writer.WriteAttributeString("origin", null, null, "MYORIGIN");
writer.WriteAttributeString("ref", null, null, "XX_88888");
writer.WriteEndElement();
writer.WriteStartElement("CustomerNo");
writer.WriteString("12345");
writer.WriteEndElement();
writer.WriteEndDocument();
writer.Flush();
writer.Close();
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
谢谢
约翰
我在Visual Basic 6中编写了一些代码,我注意到我甚至不需要声明变量来实现.
以下(明确声明):
Dim foo As String
foo = "Bar"
Run Code Online (Sandbox Code Playgroud)
似乎与此一样工作(隐式声明):
Dim foo
foo = "Bar"
Run Code Online (Sandbox Code Playgroud)
或者这个(没有声明):
foo = "Bar"
Run Code Online (Sandbox Code Playgroud)
我知道在C#中我需要在使用它之前声明一个变量,并且隐式和显式声明都是可以接受的.我也知道在Python中,在使用它们之前根本不会声明变量.
关于Visual Basic 6(以及扩展VBA)哪个适当?
谢谢
我有一个Visual Studio项目,我已经致力于VisualSVN(通过Visual Studio中的VisualSVN=> Commit菜单).我通过NuGet为这个项目添加了许多库.
我的同事已下载我上传到SVN的项目(via VisualSVN=> Get solution from Subversion...),发现这些库已丢失,他不得不重新下载它们.
几个问题:
当我注意到下面有一个好奇的评论时,我正在读这个问题:
不确定问题是什么:你可以在一个解决方案中使用VB.NET和C#项目(虽然我不建议这样做).
我这样做了很多,因为我们有传统的VB.Net代码,新代码是用C#编写的.这真的不推荐吗?为什么不?
好的我想连接到a Socket并使用System.Net.Sockets.NetworkStream该类读取网络流.这是我到目前为止:
NetworkStream myNetworkStream;
Socket socket;
socket = new Socket(AddressFamily.InterNetwork, SocketType.Raw,
ProtocolType.IPv4);
socket.Connect(IPAddress.Parse("8.8.8.8"), 8888);
myNetworkStream = new NetworkStream(socket);
byte[] buffer = new byte[1024];
int offset = 0;
int count = 1024;
myNetworkStream.BeginRead(buffer, offset, count, ??, ??);
Run Code Online (Sandbox Code Playgroud)
现在我需要一个AsyncCallback和一个Object state来完成我的BeginRead方法,但我甚至不确定这是否会起作用.我此时有点失落!我在哪里需要离开这里?
我有一个Microsoft Access弹出窗体,我用它来查找地址.一旦用户找到了邮政编码,地址就会被放入启动表格的各种文本框中.问题是,这个弹出窗体是从整个数据库中的各种形式启动的,因此它将结果放入的文本框位于不同的位置.
我尝试以下列方式解决这个问题.我有一个总是打开的交换机,所以我有一个隐藏的文本框,我以编程方式将我正在启动弹出窗体的表单的名称.然后我声明一个字符串变量,它被设置为这个隐藏文本框的当前值,如下所示:
Dim currentForm As String
currentForm = [Forms]![foo]![bar]
Run Code Online (Sandbox Code Playgroud)
然后我尝试将我的地址详细信息放入相关的文本框中,如下所示:
Forms!currentForm![txtCurrentAdd1] = rst![Line1]
Run Code Online (Sandbox Code Playgroud)
然而,这不按计划工作,我做错了什么?
谢谢
好的,我有三个Microsoft Access数据库.我希望能够以编程方式在这些之间切换.我有一个void方法,它接受一个名为dbName(我的数据库名称)的字符串参数.
public void SwitchDatabase(string dbName)
{
}
Run Code Online (Sandbox Code Playgroud)
我知道我的Access数据库的MainWindowTitle是什么,每个数据库有不同的MainWindowTitle所以我可以创建一个Process类的数组,并使它相等,所以System.Diagnostics.Process.GetProcesses().然后我可以遍历我正在运行的进程,直到找到ProcessName为MSACCESS且MainWindowTitle正确的那个,如下所示:
Process[] processList = Process.GetProcesses();
foreach (Process theProcess in processList)
{
string processName = theProcess.ProcessName;
string mainWindowTitle = theProcess.MainWindowTitle;
}
Run Code Online (Sandbox Code Playgroud)
一旦我找到了这个,我就可以获取进程ID,现在我想让这个进程成为我的活动窗口.我该怎么做呢?
谢谢
直到最近我才使用VisualSVN的试用版.当它过期时,我的雇主购买了我通过单击RegistrationVisualSVN菜单输入的许可证密钥.
但是,即使执行此操作,所有VisualSVN选项仍然在工具栏和上下文菜单中显示为灰色.
我已经尝试修复Visual SVN,卸载并重新安装它并修复Visual Studio 2010,仍然没有乐趣.
我是否错过了设置此步骤的一步?
考虑以下VB代码:
Dim fooBar As String
fooBar = "Foo Bar"
Dim q As String
q = fooBar(0)
Run Code Online (Sandbox Code Playgroud)
在VB.Net中,这个编译并且我的q字符串变量设置为字母"F",但是在VB6中我得到编译错误,因为编译器需要一个数组.
我在VB6的一个场景中,能够以这种方式处理字符串非常有用,就像通过索引器或类似的东西访问单个字符一样.
如何在VB6中访问字符串的各个字符?
谢谢